Acu4GL ensures that all database changes are immediately available to your COBOL program. It also ensures that all data updates to your COBOL program are immediately reflected in the database.
After your XFDs are generated, you can switch to a different RDBMS simply by setting the DEFAULT_HOST to point to the new RDBMS. No recompiling is necessary.
Because Acu4GL accesses the database through its native engine, the full relational integrity of the database is maintained. The COBOL program need not be concerned about such things as enforcing relationships between keys and foreign keys on tables or constraints on field relationships and contents.
If you have specified that a file is to reside on a RDBMS (by setting either DEFAULT_HOST or filename_HOST), an OPEN OUTPUT filename statement in your COBOL program generates a CREATE TABLE filename function on the specified host database. Appropriate permissions are granted based on login and password and access parameters; see the RDBMS-specific sections of this Help for specific details. For large tables, your systems database administrator can create the table and indexes for you. Databases offer many methods for creating tables that may improve performance for large tables, such as spreading the table across multiple hard drives or storing the data and the indexes on different drives.
Changes to the way a database functions should be carefully considered and tested before being fully implemented. If a database violation occurs, the engine detects it, and Acu4GL returns an I/O error condition to the COBOL program. The program can, if desired, call a standard COBOL library routine for an extended error description.
It is possible that there are library routines that do not work with or do not make sense to use with some of the Acu4GL interfaces. To find out if that is the case with your Acu4GL interface, look in the Common Questions and Answers section of the appendix specific to your interface.