Unlike DBCHECK, which directly checks the low level structure of the database, DYNACHEK works in the same way as an application program. DYNACHEK can therefore also be useful for testing things like the speed of database access over a network, as well as for integrity checking. DYNACHEK and DBCHECK are to some extent complementary programs: DBCHECK does not check consistency between the data and index files, only that each file is correct in its own right (though the -full option added in release 4.623 largely remedies this defect). DYNACHEK tests precisely this aspect of a database.
You use DYNACHEK like this:
On the Database Backup, Recovery & Check menu, select the Dynachek option.
Select the database. The Dynachek Facilities menu appears.
Click on an option in the above menu for further information.
To perform the integrity check on all tables, including those
derived from the base dictionary, select option 1 - Integrity
check. Starting with the base dictionary tables, DP4 checks all the
tables in the database. It displays status messages, similar to the
following ones, as it goes:

A counter indicates the number of errors found during the integrity
check.
At any time, you may interrupt the integrity check with <Esc> or <Ctrl+S> and <Ctrl+C>.
If the database passes the integrity check, the following message is displayed:

and you can press <Enter> to return to the DYNACHEK Facilities menu.
If the database fails the integrity check, a message is displayed to identify the problem area. However, it is possible for DYNACHEK to report spurious errors. DYNACHEK works by fetching each record twice, once using the NO_DATA flag so that only keyfield information is available. Occasionally a record may be updated between the two fetches, resulting in a problem appearing to exist, when there isn't one. You may wish to interrupt the checking and restart it on a table where a problem is reported.
If DYNACHEK generates a system error 87 then there is certainly a database corruption, and you need to restore a backup of the database as described in Restoring a Database.
Like most DP4 utilities DYNACHEK has command tail options that can be used to modify its operation. Click here for details.