Appendix DSystem Tables

When you create a database, the Firebird engine creates a lot of system tables. Metadata — the descriptions and attributes of all database objects — are stored in these system tables.

System table identifiers all begin with the prefix RDB$.

List of System Tables
Section D.1, “RDB$AUTH_MAPPING

Stores authentication and other security mappings

Section D.2, “RDB$BACKUP_HISTORY

History of backups performed using nBackup

Section D.3, “RDB$CHARACTER_SETS

Names and describes the character sets available in the database

Section D.4, “RDB$CHECK_CONSTRAINTS

Cross-references between the names of constraints (NOT NULL constraints, CHECK constraints and ON UPDATE and ON DELETE clauses in foreign key constraints) and their associated system-generated triggers

Section D.5, “RDB$COLLATIONS

Collation sequences for all character sets

Section D.6, “RDB$CONFIG

Virtual table with configuration settings applied for the current database

Section D.7, “RDB$DATABASE

Basic information about the database

Section D.8, “RDB$DB_CREATORS

A list of users granted the CREATE DATABASE privilege when using the specified database as a security database

Section D.9, “RDB$DEPENDENCIES

Information about dependencies between database objects

Section D.10, “RDB$EXCEPTIONS

Custom database exceptions

Section D.11, “RDB$FIELDS

Column and domain definitions, both system and custom

Section D.13, “RDB$FILES

Information about secondary files and shadow files

Section D.14, “RDB$FILTERS

Information about BLOB filters

Section D.15, “RDB$FORMATS

Information about changes in the formats of tables

Section D.16, “RDB$FUNCTIONS

Information about external functions

Section D.17, “RDB$FUNCTION_ARGUMENTS

Attributes of the parameters of external functions

Section D.18, “RDB$GENERATORS

Information about sequences (generators)

Section D.20, “RDB$INDEX_SEGMENTS

Segments and index positions

Section D.19, “RDB$INDICES

Definitions of all indexes in the database (system- or user-defined)

Section D.21, “RDB$LOG_FILES

Not used in the current version

Section D.22, “RDB$PACKAGES

Stores the definition (header and body) of SQL packages

Section D.23, “RDB$PAGES

Information about database pages

Section D.24, “RDB$PROCEDURES

Definitions of stored procedures

Section D.25, “RDB$PROCEDURE_PARAMETERS

Parameters of stored procedures

Section D.28, “RDB$REF_CONSTRAINTS

Definitions of referential constraints (foreign keys)

Section D.29, “RDB$RELATIONS

Headers of tables and views

Section D.30, “RDB$RELATION_CONSTRAINTS

Definitions of all table-level constraints

Section D.31, “RDB$RELATION_FIELDS

Top-level definitions of table columns

Section D.35, “RDB$TRANSACTIONS

State of multi-database transactions

Section D.38, “RDB$TYPES

Definitions of enumerated data types

Section D.39, “RDB$USER_PRIVILEGES

SQL privileges granted to system users

Section D.40, “RDB$VIEW_RELATIONS

Tables that are referred to in view definitions: one record for each table in a view

D.1RDB$AUTH_MAPPING

RDB$AUTH_MAPPING stores authentication and other security mappings.

Column NameData TypeDescription

RDB$MAP_NAME

CHAR(63)

Name of the mapping

RDB$MAP_USING

CHAR(1)

Using definition:

P - plugin (specific or any) S - any plugin serverwide M - mapping * - any method

RDB$MAP_PLUGIN

CHAR(63)

Mapping applies for authentication information from this specific plugin

RDB$MAP_DB

CHAR(63)

Mapping applies for authentication information from this specific database

RDB$MAP_FROM_TYPE

CHAR(63)

The type of authentication object (defined by plugin) to map from, or * for any type

RDB$MAP_FROM

CHAR(255)

The name of the authentication object to map from

RDB$MAP_TO_TYPE

SMALLINT

The type to map to

0 - USER 1 - ROLE

RDB$MAP_TO

CHAR(63)

The name to map to

RDB$SYSTEM_FLAG

SMALLINT

Flag:

0 - user-defined 1 or higher - system-defined

RDB$DESCRIPTION

BLOB TEXT

Optional description of the mapping (comment)