HELPLIB.HLB  —  SQL72  System Tables, Special Notes, Updating Metadata
    When you use the SQL SET TRANSACTION . . . RESERVING statement
    to lock a set of tables for an Oracle Rdb operation, you normally
    exclude from the transaction all the tables not listed in the
    RESERVING clause. However, Oracle Rdb accesses and updates system
    tables as necessary, no matter which tables you have locked with
    the SQL SET TRANSACTION statement.

    When your transaction updates database metadata, Oracle Rdb
    reserves the system tables involved in the update in the
    EXCLUSIVE share mode. Other users are unable to perform data
    definition operations on these tables until you complete your
    transaction. For example:

    o  When you refer to a domain (global field) in an update
       transaction that changes data definitions, Oracle Rdb locks
       an index for the system table, RDB$RELATION_FIELDS. No other
       users can refer to the same domain until you commit your
       transaction.

    o  When you change a system table or domain definition, Oracle
       Rdb locks an index in the system table, RDB$FIELD_VERSIONS. No
       other users can change table or global field definitions until
       you commit your transaction.

    o  When you change a table definition, Oracle Rdb locks an index
       in the system table, RDB$RELATION_FIELDS. No other users can
       change tables in the same index node until you commit your
       transaction.
Close Help