OpenInsight’s database management system is based on pluggable storage implementations, called filing systems. The most common example is Linear Hash, which is implemented by the RTP57 filing system function. The configuration information for those filing systems, which primarily defines the set of tables available to an application, is stored persistently (i.e., is not lost when you log out of OpenInsight) in a .DBT file.
In OpenInsight terms, a table is available if it is attached, and thus can be opened. As a result, without additional coding, a table is not available unless it is in the application’s .DBT file. The .DBT table is stored as a DOS file in the same folder as the OpenInsight executable (typically, X:\Revsoft\OI32bit). A separate .DBT file is created for each application: for example, the .DBT file for EXAMPLES is called EXAMPLES.DBT. A .DBT file is created when a database is defined.
The .DBT file should be updated when any of the following actions occurs:
A table has been created that will be part of the application’s database;
A table has been deleted that was part of the application’s database;
A table has been attached that will be part of the application’s database;
A table has been detached that was and will no longer be part of the application’s database;
An index has been added to a table that is part of the application’s database and that previously did not have an index;
The last index on a table that is part of the application’s database has been removed;
One or more tables that are part of the application’s database have been moved.
A .DBT file should be deleted only if the following are true:
The database that it defines no longer exists;
The database definition is no longer used;
You are certain that a backup exists of the .DBT (just in case.)
In OpenInsight's ancestor programs (Revelation and Advanced Revelation), .DBT tables did not exist, which meant that when the user logged on, the logic to attach all the tables required for the application had to be either programmed, or attached by entering commands. This was a laborious process. The centralized table definition in one .DBT file makes managing the attaching process more efficient. Database Manager and Table Builder, among other tools, make extensive use of the application's .DBT table, allowing you to see at a glance which tables and volumes are attached.