Tutorial 2 – Modifying Table Definitions with DDF Builder
There are a variety of scenarios you could encounter when dealing with out-of-date or incorrect DDFs, so it would be exhaustive to try and cover each situation within the contents of this tutorial. For this reason, this tutorial is made up of several lessons, each detailing a specific situation that you might encounter when working with a Btrieve file or existing table definition. Each lesson is designed to address one problem so that you may work through the details without the particulars of other situations providing possible confusion.
This tutorial is organized in a way that allows you work through the exercises in each lesson, breaking them apart into manageable chunks of related information. You can also refer to this tutorial later as a kind of troubleshooting review to find a list of possible situations that you may encounter. From that list, you can proceed to the exact lesson that covers that situation and review possible solutions.
Scenario
You have a collection of Btrieve data files that have DDFs available, but the table definitions in the DDFs are outdated and need modifying. It may be a case of your receiving out-of-date files from the vendor, or the application was modified without making the proper updates to the DDFs.
Goals
The goal of this tutorial is to open all of the Btrieve files and existing table definitions. You need to review DDF Builder’s findings, make any necessary changes and save the table definitions using DDF Builder. The table definitions should mirror the database schema and provide an accurate representation of the data in the Btrieve files.
The following lists each lesson in this tutorial and the lists the conditions they represent.
Lesson 1 – Working with v3.00 DDFs
Lesson 2 – Working with Pre v6.x File Formats
Lesson 3 – Invalid Data Types and Sizes
Lesson 4 – Overlapping Column Definitions
Lesson 5 – File/Field Flag Inconsistencies
Lesson 6 – Index Inconsistencies
Lesson 7 – Variable Length Record Mismatch
Lesson 8 – Record Length Mismatch