Although appearing under the PUBLIC schema, GENESIS_TABLES is actually in a special class of objects in the database called system tables, not to be confused with the SYSTEM schema. These system tables are internal tables required by the Micro Focus XDBC processor. When you execute SQL statements, the Micro Focus XDBC processor constantly refers to these tables to complete the SQL command. These system tables are marked as System tables in the catalog, and they begin with GENESIS_. If you don't want to see these tables in tools such as Microsoft Query, uncheck the System Tables checkbox under the Options button of the Add Tables dialog box.
You cannot change or modify these system tables directly. The content of these tables is maintained by the Micro Focus XDBC processor and is modified only as an effect of executing various SQL statements or the use of the Micro Focus XDBC command-line tools and scripts, such as mfaddfile. For example, issuing the following command not only results in Micro Focus XDBC creating a new table, it also results in a new row being entered into the table GENESIS_TABLES.
CREATE TABLE MYTABLE(coll CHAR(10));
This effect can be seen in mfsql with the following command:
SQL (/? for help) ==> SELECT SQL continued ======> t_owner, t_name SQL continued ======> FROM SQL continued ======> genesis_tables SQL continued ======> WHERE SQL continued ======> t_name = 'MYTABLE'; T_OWNER T_NAME ------------------------------ ------------------ SYSTEM MYTABLE SQL (/? for help) ==>
Note that the table name in the query is in upper case.
The system tables include the following:
Table Name | Description |
---|---|
GENESIS_AUTHS | Enables the setting of object-level authorizations on objects (for example, tables and views) by the GRANT SQL statement. These privileges are SELECT, INSERT, UPDATE, and DELETE |
GENESIS_COLUMNS | Provides the mapping between SQL tables/views and the columns that comprise them. These fields are equivalent to the COBOL fields that comprise a File Descriptor (FD) |
GENESIS_CONDITIONS | Tracks the conditions used to modify the result set based on the values in certain columns |
GENESIS_DEPENDS | Keeps track of view dependencies |
GENESIS_FORKEYS | Defines foreign key relationships, but is not currently used. |
GENESIS_INDEXES | Provides the mapping between SQL indexes and the COBOL keys |
GENESIS_TABLES | Provides information about the tables and views that comprise a database. This contains all of the COBOL XFD files that you have loaded into the database, as well as system tables |
GENESIS_USERS | Enables a security method based on user ID and password |
GENESIS_VIEWS | Describes the SQL view definition |
GENESIS_XCOLUMNS | Provides the mapping between SQL indexes and the COBOL key segments |