Progress
SQL-92
Guide and Reference


Overview of System Catalog Tables

Progress SQL-92 maintains a set of system tables for storing information about tables, columns, indexes, constraints, and privileges.

All users have read access to the system catalog tables. SQL Data Definition Language (DDL) statements and GRANT and REVOKE statements modify system catalog tables. The system tables are modified in response to these statements, as the database evolves and changes.

The owner of the system tables is sysprogress. If you connect to a Progress SQL-92 environment with a username other than sysprogress, you must use the owner qualifier when you reference a system table in a SQL query. Alternatively, you can issue a SET SCHEMA ’sysprogress’ statement to set the default username for unqualified table names to ’sysprogress’.

Core tables store information on the tables, columns, and indexes that make up the database. The remaining tables contain detailed information on database objects, and statistical information.

Table B–1 lists the system catalog tables in the same order that they are presented in following sections.

Table B–1: System Tables and Descriptions
System Table
Summary Description
Core system table. One row for each TABLE in the database.
Core system table. One row for each COLUMN of each table in the database.
Core system table. One row for each component of each INDEX in the database.
A single row with a single column set to the value 100.
One row for each CHARACTER column in the database.
One row for each column for each user holding privileges on the column.
Provides mappings between SYSCOLUMNS table and SYS*STAT tables.
Superset of information in core system table SYSCOLUMNS.
Information on supported data types.
One row for each DATE column in the database.
One row for each user with database-wide privileges.
One row for each FLOAT column in the database.
Information on each index in the database.
One row for each INTEGER column in the database.
One row for each NUMERIC column in the database.
One row for each compiled Java stored procedure or trigger in the database.
One row for each column in the result set of a stored procedure.
One row for each stored procedure in the database.
One row for each Java source code for a stored procedure or trigger in the database.
One row for each REAL column in the database.
One row for each SMALLINT column in the database.
One row for each SYNONYM in the database.
One row for each unique user/table combination holding table privileges on a table in the database.
Superset of information in core system table SYSTABLES.
Contains statistics for each user table in the database.
One row for each TIME column in the database.
One row for each TINYINT column in the database.
One row for each column specified in each trigger in the database.
One row for each trigger in the database.
One row for each TIMESTAMP column in the database.
One row for each VARCHAR column in the database.
One row for each VIEW in the database.
One row for each CHECK CONSTRAINT defined on a column in the database.
One row for each CHECK CONSTRAINT defined on a user table in the database.
One row for each column in the database defined with a PRIMARY KEY or FOREIGN KEY.
One row for each table in the database defined with a REFERENTIAL INTEGRITY CONSTRAINT.
One row for each CONSTRAINT defined on a table in the database.


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095