Creating a System Catalog and Views

A system catalog, also known as a repository, is where database systems store schema metadata, such as information about tables and columns in your data directories, and internal bookkeeping information.

If you ran demo.bat or demo.sh, you don't need to create a system catalog. One has been created for you. Look for an AcuGT/syscat/ directory to confirm whether a system catalog exists.

For your convenience, we have included a script that creates a system catalog and simultaneously generates information-schema views of the catalog. The views are reflections of the system tables and contain columns that describe your COBOL data, so that you can use SQL syntax that you're used to using (standard SQL).

In addition, AcuXDBC includes a command-line utility, xdbcutil, that lets you create a system catalog for your COBOL data files. xdbcutil reads your XFD files and creates a table, transforming your COBOL file system into a database. The system catalog itself is stored in the COBOL database.

If you plan to port your system catalog to multiple hardware operating systems, be aware of the byte order format for both the machine you created your system catalog on and the machine you are going to deploy on. The machine's byte order format is commonly referred to as big-endian or little-endian. A system catalog created on a machine that uses little-endian (Intel, for example) will not be portable to a machine that uses big-endian (Motorola, for example), and vice versa. In this case, you need to create a system catalog once on each type of machine (big-endian and little-endian) and then port the appropriate catalog to the appropriate target machine.

An alternate method is to dynamically create and load the database on the target machine. In this case, you would send the XFD files to the end-user site, and then create an empty database and load the XFD files into it, either one at a time or in batch mode.

Note: This section describes how to create an empty system catalog. Once you have a catalog, you must populate it with information from your XFDs. This process is described in Loading the System Catalog with Your XFDs.