Identify the database estate
- Preserve the complete application and data directories before opening files with repair tools.
- Inventory likely Btrieve data files, dictionaries, DDF files, configuration and transaction artifacts.
- Record the engine edition/version, client components and working-machine architecture.
- Determine whether the application uses transactional Btrieve access, relational SQL access or both.
- Test copied data against a compatible isolated engine without writing to the originals.
File extensions alone do not provide schema. Record layouts may be supplied by DDF dictionaries or embedded in application code, and application rules may give numeric fields or status bytes their meaning.
Recovery versus environment repair
| Files healthy, engine absent | Reconstruct a compatible runtime or use supported extraction interfaces. |
|---|---|
| Dictionary missing | Recover field definitions from application behavior, code and representative records. |
| Version mismatch | Use a controlled upgrade/export path with before-and-after reconciliation. |
| Actual corruption | Work on copies; recovery may be partial where pages or records are overwritten. |
Validate extraction with record counts, keys, totals and representative application workflows. CSV export is not sufficient if relationships, decimals, dates or code values lose meaning.
Compare unknown database identification, Clarion recovery, legacy database recovery and the database pillar.