In a multi-user environment, R:BASE must be aware of any schema modifications made by a user. Being aware of schema modifications, which is necessary for database integrity, entails constantly re-reading schema information.
Because many data-processing operations do not make frequent schema changes to the database, such a re-reading unnecessarily slows down processing.
The command SET STATICDB ON instructs R:BASE to prevent any schema modifications, therefore, R:BASE does not read schema information. By default, STATICDB is set off. SET STATICDB OFF forces a re-read of schema information before running any command.
When connecting to a database with STATICDB set on, R:BASE displays "Database Schema is Read-Only." When STATICDB is set on, the Database Designer option on the Tools menu, and the New and Design buttons for Tables and Databases in the Object Manager are inactive. Also, the following R:BASE commands are not allowed when STATICDB is set on.
Some R:BASE commands are unavailable when STATICDB is set on. The Unavailable R:BASE Commands Table lists the commands that are unavailable when STATICDB is set on.
If a user has STATICDB set off, that user cannot connect to a database being used by a user who has STATICDB set on. All users accessing the same database must have matching STATICDB settings.
When STATICDB is set on, only temporary tables and views can be created; these are deleted when disconnecting from the database.
The BACKUP ALL and UNLOAD ALL commands do not act upon temporary tables. You can, however, backup individual temporary tables with the BACKUP command. Similarly, UNLOAD permits copying of individual temporary tables to the selected output device.
You can find out what the current STATICDB setting is with the SHOW STATICDB command. When STATICDB is set on, the LIST TABLE command will display the temporary table and view names dimmed. Also, you can capture the current STATICDB setting as a value with CVAL, for example: