GENESIS Tables

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