FirebirdSQL logo

Lors de la création initiale d’une base de données, le système de gestion des bases de données crée de nombreuses tables système. Les tables système stockent les métadonnées, c’est-à-dire les descriptions de tous les objets de la base de données. Les tables système contiennent le préfixe RDB$ dans leur nom.

Tables système
RDB$AUTH_MAPPING

Informations sur le mappage des objets de sécurité.

RDB$BACKUP_HISTORY

Stocke l’historique des copies des backup de la base de données en utilisant nbackup.

RDB$CHARACTER_SETS

Une description des jeux de caractères disponibles dans la base de données.

RDB$CHECK_CONSTRAINTS

Faire correspondre les noms de déclencheurs aux noms de contraintes associés aux caractéristiques NOT NULL, aux contraintes CHECK et aux phrases ON UPDATE et ON DELETE dans les contraintes de clés étrangères.

RDB$COLLATIONS

Ordre de tri pour tous les jeux de caractères.

RDB$CONFIG

Table virtuelle montrant les paramètres de configuration réels définis dans firebird.conf, databases.conf ou par l’intermédiaire de DPB pass-through.

RDB$DATABASE

Données de base sur la base de données.

RDB$DB_CREATORS

Contient des informations sur les utilisateurs qui sont autorisés à créer la base de données. Il n’est utilisé que si la base de données actuelle est désignée comme une base de données de sécurité.

RDB$DEPENDENCIES

Informations sur les dépendances entre les objets de la base de données.

RDB$EXCEPTIONS

Exceptions personnalisées de la base de données.

RDB$FIELD_DIMENSIONS

Les dimensions des colonnes qui sont des tableaux.

RDB$FIELDS

Caractéristiques des colonnes et des domaines, qu’ils soient créés par le système ou par l’utilisateur.

RDB$FILES

Informations sur les fichiers secondaires et les fichiers de copie fantôme.

RDB$FILTERS

Données sur les filtres BLOB.

RDB$FORMATS

Données sur les modifications apportées aux tableaux.

RDB$FUNCTION_ARGUMENTS

Paramètres des fonctions stockées ou externes.

RDB$FUNCTIONS

Description des fonctions stockées ou externes.

RDB$GENERATORS

Informations sur les générateurs (séquences).

RDB$INDEX_SEGMENTS

Segments d’index.

RDB$INDICES

Définition des index de la base de données (créés par l’utilisateur ou le système).

RDB$LOG_FILES

Non utilisé dans la présente version.

RDB$PACKAGES

Informations sur les paquets PSQL.

RDB$PAGES

Informations sur les pages de la base de données.

RDB$PROCEDURE_PARAMETERS

Paramètres des procédures stockées.

RDB$PROCEDURES

Descriptions des procédures stockées.

RDB$PUBLICATION_TABLES

Tables inclus dans la publication.

RDB$PUBLICATIONS

Publication — un ensemble de tables pour la réplication.

RDB$REF_CONSTRAINTS

Descriptions des contraintes de base de données nommées (clés étrangères).

RDB$RELATION_CONSTRAINTS

Description de toutes les restrictions au niveau de la table.

RDB$RELATION_FIELDS

Caractéristiques des colonnes de la table.

RDB$RELATIONS

Nom des tables et des vues.

RDB$ROLES

Définition des rôles.

RDB$SECURITY_CLASSES

Les listes de contrôle d’accès.

RDB$TIME_ZONES

Une liste des fuseaux horaires pris en charge par le serveur.

RDB$TRANSACTIONS

État des transactions lors de l’accès à plusieurs bases de données.

RDB$TRIGGER_MESSAGES

Messages des déclencheurs.

RDB$TRIGGERS

Descriptions des déclencheurs.

RDB$TYPES

Description des types de données énumérés.

RDB$USER_PRIVILEGES

Privilèges des utilisateurs du système.

RDB$VIEW_RELATIONS

Décrit les vues. Contient les noms des tables utilisées lors de la définition de la vue.

RDB$AUTH_MAPPING

Informations sur les mappages d’objets de sécurité locaux.

Description des colonnes de la table RDB$AUTH_MAPPING.

Nom de la colonne Type de données Description

RDB$MAP_NAME

CHAR(63)

Affichage du Nom.

RDB$MAP_USING

CHAR(1)

Si l’authentification est à l’échelle du serveur (S) ou conventionnelle (P).

RDB$MAP_PLUGIN

CHAR(63)

Le nom du plug-in d’authentification d’où provient le mappage.

RDB$MAP_DB

CHAR(63)

Le nom de la base de données dans laquelle l’authentification a eu lieu. La cartographie est réalisée à partir de celui-ci.

RDB$MAP_FROM_TYPE

CHAR(63)

Le type d’objet à afficher.

RDB$MAP_FROM

CHAR(255)

Le nom de l’objet à partir duquel le mappage sera effectué.

RDB$MAP_TO_TYPE

SMALLINT

Le type d’objet vers lequel le mappage sera effectué :

  • 0 — USER;

  • 1 — ROLE.

RDB$MAP_TO

CHAR(63)

Le nom de l’objet vers lequel le mappage sera effectué (nom de l’utilisateur ou du rôle).

RDB$SYSTEM_FLAG

SMALLINT

Caractéristique : définie par l’utilisateur - valeur 0 ; définie par le système - valeur 1.

RDB$DESCRIPTION

BLOB TEXT

Une description textuelle arbitraire de l’ordre de tri.

RDB$BACKUP_HISTORY

Cette table stocke l’historique d’une copie de la base de données à l’aide de l’utilitaire nbackup.

Table 1. Description des colonnes de la table RDB$BACKUP_HISTORY
Nom de la colonne Type de données Description

RDB$BACKUP_ID

INTEGER

Un identifiant attribué par le noyau.

RDB$TIMESTAMP

DATE

La date et l’heure auxquelles la copie a été effectuée.

RDB$BACKUP_LEVEL

INTEGER

Niveau de copie.

RDB$GUID

CHAR(38)

Identifiant unique.

RDB$SCN

INTEGER

Numéro de système.

RDB$FILE_NAME

VARCHAR(255)

Chemin complet et nom de fichier de la copie.

RDB$CHARACTER_SETS

Contient les jeux de caractères disponibles dans la base de données.

Table 1. Description des colonnes de la table RDB$CHARACTER_SETS
Nom de la colonne Type de données Description

RDB$CHARACTER_SET_NAME

CHAR(63)

Le nom du jeu de caractères.

RDB$FORM_OF_USE

CHAR(63)

Non utilisé.

RDB$NUMBER_OF_CHARACTERS

INTEGER

Nombre de caractères dans un ensemble. Non utilisé pour les jeux de caractères existants.

RDB$DEFAULT_COLLATE_NAME

CHAR(63)

Le nom de l’ordre de tri par défaut pour le jeu de caractères.

RDB$CHARACTER_SET_ID

SMALLINT

L’identifiant unique du jeu de caractères.

RDB$SYSTEM_FLAG

SMALLINT

Indicateur système : a une valeur de 1 si le jeu de caractères a été défini dans le système lors de la création de la base de données ; une valeur de 0 pour un jeu de caractères défini par l’utilisateur.

RDB$DESCRIPTION

BLOB TEXT

Une description textuelle arbitraire d’un jeu de caractères.

RDB$FUNCTION_NAME

CHAR(63)

Le nom de la fonction externe pour les jeux de caractères définis par l’utilisateur auxquels on accède via la fonction externe.

RDB$BYTES_PER_CHARACTER

SMALLINT

Nombre d’octets pour représenter un caractère.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de ce jeu de caractères.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur est le propriétaire (créateur) du jeu de caractères.

RDB$CHECK_CONSTRAINTS

Décrit la correspondance entre les noms de déclencheurs et les noms de contraintes associés aux caractéristiques NOT NULL, aux contraintes CHECK et aux phrases ON UPDATE, ON DELETE dans les contraintes de clés étrangères.

Table 1. Description des colonnes de la table RDB$CHECK_CONSTRAINTS
Nom de la colonne Type de données Description

RDB$CONSTRAINT_NAME

CHAR(63)

Nom de la restriction. Défini par l’utilisateur ou généré automatiquement par le système.

RDB$TRIGGER_NAME

CHAR(63)

Pour une contrainte CHECK — c’est le nom du déclencheur qui supporte la contrainte. Pour une contrainte NOT NULL, c’est le nom de la colonne à laquelle la contrainte s’applique. Pour une contrainte de clé étrangère, c’est le nom du déclencheur qui supporte les phrases ON UPDATE, ON DELETE.

RDB$COLLATIONS

Ordre de tri des jeux de caractères.

Table 1. Description des colonnes de la table RDB$COLLATIONS
Nom de la colonne Type de données Description

RDB$COLLATION_NAME

CHAR(63)

Le nom de l’ordre de tri.

RDB$COLLATION_ID

SMALLINT

L’identifiant de l’ordre de tri. L’identifiant du jeu de caractères est accompagné d’un identifiant unique de l’ordre de tri.

RDB$CHARACTER_SET_ID

SMALLINT

L’identifiant du jeu de caractères. L’identifiant de l’ordre de tri est accompagné d’un identifiant unique.

RDB$COLLATION_ATTRIBUTES

SMALLINT

Attributs de tri. Représente un masque de bits,

où le bit 1 indique si la comparaison est sensible à la casse (0 — NO PAD ; 1 — PAD SPACE) ; + le bit 2 indique si la comparaison est sensible à la casse (0 — CASE SENSITIVE, 1 — CASE INSENSITIVE) ; + le bit 3 indique si la comparaison est sensible aux accents (0 — ACENT SENSITIVE, 1 — ACENT SENSITIVE).

Une valeur de 5 signifie donc que la comparaison n’est pas sensible aux espaces de fin et aux lettres accentuées.

RDB$SYSTEM_FLAG

SMALLINT

Caractéristique : définie par l’utilisateur - valeur 0 ; définie par le système - valeur 1.

RDB$DESCRIPTION

BLOB TEXT

Une description textuelle arbitraire de l’ordre de tri.

RDB$FUNCTION_NAME

CHAR(63)

Non utilisé actuellement.

RDB$BASE_COLLATION_NAME

CHAR(63)

Le nom de l’ordre de tri de base pour cet ordre de tri.

RDB$SPECIFIC_ATTRIBUTES

BLOB TEXT

Description des attributs spéciaux.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de cette sorte.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur qui est le propriétaire (créateur) du tri.

RDB$CONFIG

Table virtuelle affichant les paramètres de configuration réels spécifiés dans firebird.conf, databases.conf ou via DPB pass-through.

La table RDB$CONFIG est remplie à partir de structures en mémoire si nécessaire, et l’instance est stockée au niveau de la requête SQL. Pour des raisons de sécurité, seuls SYSDBA et le propriétaire de la base de données sont autorisés à y accéder. Un utilisateur non privilégié voit un contenu vide, aucune erreur ne se produit.

Table 1. Description des colonnes de la table RDB$CONFIG
Nom de la colonne Type de données Description

RDB$CONFIG_ID

INTEGER

L’identifiant unique de l’entrée. Cela n’a pas d’importance.

RDB$CONFIG_NAME

VARCHAR(63)

Nom du paramètre, par exemple “DefaultDbCachePages”, “TempCacheLimit”, etc.

RDB$CONFIG_VALUE

VARCHAR(255)

La valeur réelle du paramètre, peut être définie dans la configuration et si nécessaire reprise du noyau Firebird (en cas de valeur incorrecte).

RDB$CONFIG_DEFAULT

VARCHAR(255)

Valeur par défaut, corrigée dans le code de Firebird.

RDB$CONFIG_IS_SET

BOOLEAN

TRUE si elle est définie par l’utilisateur, FALSE sinon.

RDB$CONFIG_SOURCE

VARCHAR(255)

Le nom du fichier de configuration où le paramètre a été défini, par rapport au dossier racine de firebird, par ex : “firebird.conf”, “databases.conf” ou la valeur spéciale “DPB” si le paramètre a été défini sur DPB, si aucune valeur de paramètre n’a été définie, ce champ contient NULL.

RDB$DATABASE

Données de base de la base de données, contenant un seul enregistrement.

Table 1. Description des colonnes de la table RDB$DATABASE
Nom de la colonne Type de données Description

RDB$DESCRIPTION

BLOB TEXT

Texte de note pour la base de données.

RDB$RELATION_ID

SMALLINT

Le nombre de tables et de vues dans la base de données.

RDB$SECURITY_CLASS

CHAR(63)

Une classe de sécurité définie dans RDB$SECURITY_CLASSES pour répondre aux restrictions d’accès à l’échelle de la base de données.

RDB$CHARACTER_SET_NAME

CHAR(63)

Nom du jeu de caractères par défaut de la base de données, défini dans la phrase DEFAULT CHARACTER SET lors de la création de la base de données. NULL — jeu de caractères NONE.

RDB$LINGER

INTEGER

Le nombre de secondes de "délai" (défini par l’opérateur alter database set linger) avant que la dernière connexion à la base de données soit fermée (dans SuperServer). Si aucun délai n’est défini, il contient NULL.

RDB$SQL_SECURITY

BOOLEAN

Mode par défaut SQL SECURITY (DEFINER ou INVOKER) pour les objets nouvellement créés :

NULL — mode par défaut (INVOKER) ;

FALSE — INVOKER. Les objets nouvellement créés sont exécutés avec l’utilisateur appelant ;

TRUE — DEFINER. Les objets nouvellement créés sont exécutés avec les droits de l’utilisateur qui les a définis.

RDB$DB_CREATORS

Contient des informations sur les utilisateurs qui sont autorisés à créer la base de données. Utilisé uniquement si la base de données actuelle est désignée comme une base de données de sécurité.

Table 1. Description des colonnes de la table RDB$DB_CREATORS
Nom de la colonne Type de données Description

RDB$USER

CHAR(63)

Le nom de l’utilisateur ou du rôle autorisé à créer la base de données.

RDB$USER_TYPE

SMALLINT

Type d’utilisateur :

  • 8 — utilisateur ;

  • 13 — rôle.

RDB$DEPENDENCIES

Informations sur les dépendances entre les objets de la base de données.

Table 1. Description des colonnes de la table RDB$DEPENDENCIES
Nom de la colonne Type de données Description

RDB$DEPENDENT_NAME

CHAR(63)

Nom de la vue, de la procédure, du déclencheur, de la contrainte CHECK ou de la colonne calculée pour laquelle la dépendance est décrite.

RDB$DEPENDED_ON_NAME

CHAR(63)

Un objet qui dépend de l’objet décrit — une table référencée par une vue, une procédure, un déclencheur, une contrainte CHECK ou une colonne calculée.

RDB$FIELD_NAME

CHAR(63)

Nom de la colonne de la table dépendante à laquelle la vue, la procédure, le déclencheur, la contrainte CHECK ou la colonne calculée fait référence.

RDB$DEPENDENT_TYPE

SMALLINT

Identifie le type d’objet pour lequel la dépendance est décrite :

  • 0 — table ;

  • 1 — représentation ;

  • 2 — déclencheur ;

  • 3 — colonne calculée ;

  • 4 — CHECK contrainte ;

  • 5 — procédure ;

  • 6 — expression de l’index ;

  • 9 — colonne ;

  • 15 — fonction stockée ;

  • 18 — en-tête de paquet ;

  • 19 — corps du paquet.

RDB$DEPENDED_ON_TYPE

SMALLINT

Identifie le type d’objet dépendant :

  • 0 - tableau (ou sa colonne) ;

  • 1 — vue ;

  • 2 — déclencheur ;

  • 3 — colonne calculée ;

  • 4 — CHECK contrainte ;

  • 5 — procédure ;

  • 6 — expression de l’index ;

  • 7 — exception ;

  • 8 — utilisateur ;

  • 9 — colonne ;

  • 10 — indice ;

  • 14 — générateur (séquence) ;

  • 15 — UDF ou fonction stockée ;

  • 17 — tri ;

  • 18 — en-tête de paquet ;

  • 19 — corps du paquet.

RDB$PACKAGE_NAME

CHAR(63)

La procédure ou le paquet de fonctions pour lequel la dépendance est décrite.

RDB$EXCEPTIONS

Exceptions personnalisées de la base de données.

Table 1. Description des colonnes de la table RDB$EXCEPTIONS
Nom de la colonne Type de données Description

RDB$EXCEPTION_NAME

CHAR(63)

Le nom de l’exception de l’utilisateur.

RDB$EXCEPTION_NUMBER

INTEGER

Un numéro d’exception unique attribué par le système.

RDB$MESSAGE

CHAR(1023)

Texte du message dans l’exception.

RDB$DESCRIPTION

BLOB TEXT

Description textuelle arbitraire de l’exception.

RDB$SYSTEM_FLAG

SMALLINT

Indication

défini par l’utilisateur = 0 ;
défini par le système = 1 ou plus.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de cette exception.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur — le propriétaire (créateur) de l’exception.

RDB$FIELD_DIMENSIONS

Les dimensions des colonnes qui sont dans des tables.

Table 1. Description des colonnes de la table RDB$FIELD_DIMENSIONS
Nom de la colonne Type de données Description

RDB$FIELD_NAME

CHAR(63)

Le nom de la colonne qui est un tableau. Doit être contenu dans le champ RDB$FIELD_NAME de la table RDB$FIELDS.

RDB$DIMENSION

SMALLINT

Définit une dimension d’une colonne de tableau. Les dimensions sont numérotées à partir de 0.

RDB$LOWER_BOUND

INTEGER

La limite inférieure de cette dimension.

RDB$UPPER_BOUND

INTEGER

La limite supérieure de la dimension à décrire.

RDB$FIELDS

Caractéristiques des colonnes et des domaines, qu’ils soient créés par le système ou par l’utilisateur. Cette table stocke les détails des attributs de toutes les colonnes.

Note

La colonne RDB$FIELDS.RDB$FIELD_NAME fait référence à RDB$RELATION_FIELDS.RDB$FIELD_SOURCE, mais pas à RDB$RELATION_FIELDS.RDB$FIELD_NAME.

Table 1. Description des colonnes de la table RDB$FIELDS
Nom de la colonne Type de données Description

RDB$FIELD_NAME

CHAR(63)

Le nom unique du domaine créé par l’utilisateur, ou le domaine automatiquement construit par le noyau de Firebird pour la colonne de la table. Dans le second cas, le nom commencera par les caractères RDB$.

RDB$QUERY_NAME

CHAR(63)

Non utilisé.

RDB$VALIDATION_BLR

BLOB BLR

Représentation binaire (BLR) de l’expression SQL spécifiant la vérification de la valeur CHECK sur le domaine.

RDB$VALIDATION_SOURCE

BLOB TEXT

Texte source SQL original spécifiant le contrôle des valeurs CHECK.

RDB$COMPUTED_BLR

BLOB BLR

La représentation binaire (BLR) de l’expression SQL utilisée par le serveur de la base de données pour effectuer des calculs lors de l’accès à la colonne COMPUTED BY.

RDB$COMPUTED_SOURCE

BLOB TEXT

Le texte source original de l’expression qui définit la colonne `COMPUTED BY'.

RDB$DEFAULT_VALUE

BLOB BLR

Valeur par défaut sous forme de BLR binaire.

RDB$DEFAULT_SOURCE

BLOB TEXT

La valeur par défaut dans le langage SQL d’origine.

RDB$FIELD_LENGTH

SMALLINT

Taille de la colonne en octets. FLOAT, DATE, TIME, INTEGER occupent 4 octets. Les identifiants DOUBLE PRECISION, BIGINT, TIMESTAMP et BLOB — 8 octets. Pour les types de données CHAR et VARCHAR, la colonne indique le nombre maximum d’octets spécifié lors de la déclaration du domaine de la chaîne (colonne).

RDB$FIELD_SCALE

SMALLINT

Un nombre négatif spécifie l’échelle pour les colonnes DECIMAL et NUMERIC — le nombre de décimales après le point décimal.

RDB$FIELD_TYPE

SMALLINT

Code du type de données pour la colonne :

  • 7 - SMALLINT ;

  • 8 - INTEGER ;

  • 10 - FLOAT ;

  • 12 - DATE ;

  • 13 - TIME WITHOUT TIME ZONE ;

  • 14 - CHAR ou BINARY ;

  • 16 - BIGINT ;

  • 23 - BOOLEAN ;

  • 24 - DECFLOAT(16) ;

  • 25 - DECFLOAT(34) ;

  • 26 - INT128 ;

  • 27 - DOUBLE PRÉCISION ;

  • 28 - TIME WITH TIME ZONE ;

  • 29 - TIMESTAMP AVEC FUSEAU HORAIRE ;

  • 35 - TIMESTAMP SANS FUSEAU HORAIRE ;

  • 37 - VARCHAR ou VARBINARY ;

  • 261 - BLOB.

Les codes pour DECIMAL et NUMERIC ont la même taille que les types entiers utilisés pour les stocker.

Pour les types BINARY, VARBINARY le champ RDB$FIELD_SUB_TYPE = 0, pour CHAR et VARCHAR le champ RDB$FIELD_SUB_TYPE = 1.

RDB$FIELD_SUB_TYPE

SMALLINT

Pour le type de données BLOB, définit le sous-type :

  • 0 - non défini ;

  • 1 - texte ;

  • 2 - BLR ;

  • 3 - liste de contrôle d’accès ;

  • 4 - réservé pour une utilisation future ;

  • 5 - description codée des métadonnées de la table ;

  • 6 - description d’une transaction vers plusieurs bases de données qui ne s’est pas terminée normalement.

Pour les ensembles de types de données CHAR :

  • 0 - données non définies ;

  • 1 - données binaires fixes.

Pour les types de données de type entier (SMALLINT, INTEGER, BIGINT, INT128) et nombres à virgule fixe (NUMERIC, DECIMAL) définit un type de données spécifique :

  • 0 ou NULL - le type de données correspond à la valeur du champ RDB$FIELD_TYPE ;

  • 1 - NUMERIC ;

  • 2 - DECIMAL.

RDB$MISSING_VALUE

BLOB BLR

Non utilisé.

RDB$MISSING_SOURCE

BLOB TEXT

Non utilisé.

RDB$DESCRIPTION

BLOB TEXT

Texte de commentaire arbitraire pour le domaine (colonne du tableau).

RDB$SYSTEM_FLAG

SMALLINT

Caractéristique

valeur 1 - domaine créé automatiquement par le système;
valeur 0 - domaine défini par l’utilisateur.

RDB$QUERY_HEADER

BLOB TEXT

Non utilisé.

RDB$SEGMENT_LENGTH

SMALLINT

Pour les colonnes BLOB, définit la longueur du tampon BLOB en octets. Pour les autres types de données, il contient NULL.

RDB$EDIT_STRING

VARCHAR(127)

Non utilisé.

RDB$EXTERNAL_LENGTH

SMALLINT

Longueur de la colonne en octets si elle fait partie d’une table externe. Toujours NULL pour les tables normales.

RDB$EXTERNAL_SCALE

SMALLINT

Valeur de degré pour une colonne d’un type de données entier dans une table externe ; spécifiée par la puissance de 10 par laquelle l’entier est multiplié.

RDB$EXTERNAL_TYPE

SMALLINT

Le type de données du champ tel que présenté dans la table externe.

  • 7 - SMALLINT ;

  • 8 - INTEGER ;

  • 10 - FLOAT ;

  • 12 - DATE ;

  • 13 - TIME WITHOUT TIME ZONE ;

  • 14 - CHAR ;

  • 16 - BIGINT ;

  • 23 - BOOLEAN ;

  • 24 - DECFLOAT(16) ;

  • 25 - DECFLOAT(34) ;

  • 26 - INT128 ;

  • 27 - DOUBLE PRÉCISION ;

  • 28 - TIME WITH TIME ZONE ;

  • 29 - TIMESTAMP AVEC FUSEAU HORAIRE ;

  • 35 - TIMESTAMP SANS FUSEAU HORAIRE ;

  • 37 - VARCHAR.

Les codes pour DECIMAL et NUMERIC ont la même taille que les types entiers utilisés pour les stocker.

RDB$DIMENSIONS

SMALLINT

Spécifie le nombre de dimensions du tableau si la colonne a été définie comme un tableau. Pour les colonnes qui ne sont pas des tableaux, c’est toujours NULL.

RDB$NULL_FLAG

SMALLINT

Indique si la colonne peut prendre une valeur vide (le champ contiendra une valeur NULL) ou non (le champ contiendra une valeur de 1).

RDB$CHARACTER_LENGTH

SMALLINT

Longueur des colonnes CHAR ou VARCHAR en caractères (pas en octets).

RDB$COLLATION_ID

SMALLINT

L’identifiant de l’ordre de tri pour la colonne de caractères ou le domaine. Si elle n’est pas spécifiée, la valeur du champ sera 0.

RDB$CHARACTER_SET_ID

SMALLINT

L’identifiant du jeu de caractères pour une colonne de caractères, une colonne BLOB ou un domaine.

RDB$FIELD_PRECISION

SMALLINT

Spécifie le nombre total de chiffres pour un type de données numériques à virgule fixe (DECIMAL et NUMERIC). La valeur est 0 pour les types de données entiers et NULL pour tous les autres types de données.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de ce domaine.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur qui possède (crée) le domaine.

RDB$FILES

Informations sur les dossiers secondaires et les dossiers de copie opérationnelle.

Table 1. Description des colonnes de la table RDB$FILES
Nom de la colonne Type de données Description

RDB$FILE_NAME

VARCHAR(255)

Chemin d’accès complet et nom du fichier de la base de données secondaire dans une base de données multi-fichiers ou un fichier de copie opérationnelle.

RDB$FILE_SEQUENCE

SMALLINT

Le numéro séquentiel du fichier secondaire dans la séquence ou le numéro du fichier de copie dans le jeu de copies opérationnelles.

RDB$FILE_START

INTEGER

Numéro de page initial du fichier secondaire ou du fichier de copie rapide.

RDB$FILE_LENGTH

INTEGER

Longueur du fichier en pages de base de données.

RDB$FILE_FLAGS

SMALLINT

Pour un usage interne.

RDB$SHADOW_NUMBER

SMALLINT

Le numéro du jeu de copies opérationnelles. Si la chaîne décrit un fichier de base de données secondaire, la valeur du champ sera NULL ou 0.

RDB$FILTERS

Contient des données sur les filtres `BLOB'.

Table 1. Description des colonnes de la table RDB$FILTERS
Nom de la colonne Type de données Description

RDB$FUNCTION_NAME

CHAR(63)

Le nom unique du filtre est BLOB.

RDB$DESCRIPTION

BLOB TEXT

Documentation écrite par l’utilisateur sur le filtre `BLOB' et les deux sous-types utilisés.

RDB$MODULE_NAME

VARCHAR(255)

Nom de la bibliothèque dynamique / objet partagé où se trouve le code du filtre BLOB.

RDB$ENTRYPOINT

CHAR(255)

Le point d’entrée dans la bibliothèque de filtres pour ce filtre est BLOB.

RDB$INPUT_SUB_TYPE

SMALLINT

Le sous-type BLOB des données à convertir.

RDB$OUTPUT_SUB_TYPE

SMALLINT

Le sous-type BLOB dans lequel les données d’entrée sont converties.

RDB$SYSTEM_FLAG

SMALLINT

Indication

filtre défini en externe
(c.-à-d. défini par l’utilisateur = valeur 0 ;
défini en interne = valeur 1 ou plus)

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de ce filtre BLOB.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur est le propriétaire (créateur) du filtre BLOB.

RDB$FORMATS

La table RDB$FORMATS stocke les données relatives aux modifications des métadonnées de la table. Chaque fois que les métadonnées de la table sont modifiées, la table reçoit un nouveau numéro de format. Lorsque le numéro de format d’une table atteint 255 (ou 32000 pour les vues), la base de données entière devient inaccessible. Dans ce cas, vous devez effectuer une sauvegarde avec l’utilitaire gbak, puis restaurer cette copie et continuer à travailler avec la base de données nouvellement créée.

Table 1. Description des colonnes de la table RDB$FORMATS
Nom de la colonne Type de données Description

RDB$RELATION_ID

SMALLINT

L’identifiant de la table ou de la vue.

RDB$FORMAT

SMALLINT

L’identifiant du format de la table. Il peut y avoir 255 formats pour les tables et 32000 pour les vues.

RDB$DESCRIPTOR

BLOB FORMAT

Affichage BLOB des colonnes et des caractéristiques des données au moment de la création de l’enregistrement de format.

RDB$FUNCTION_ARGUMENTS

Paramètres des fonctions stockées ou externes.

Table 1. Description des colonnes de la table RDB$FUNCTION_ARGUMENTS
Nom de la colonne Type de données Description

RDB$FUNCTION_NAME

CHAR(63)

Nom de la fonction.

RDB$ARGUMENT_POSITION

SMALLINT

La position de l’argument dans la liste des arguments.

RDB$MECHANISM

SMALLINT

Mécanisme de transcription des paramètres pour les fonctions existantes :

  • 0 — par valeur ;

  • 1 — par référence ;

  • 2 — via un descripteur ;

  • 3 — via un descripteur BLOB.

RDB$FIELD_TYPE

SMALLINT

Code du type de données de l’argument :

  • 7 — SMALLINT ;

  • 8 — INTEGER ;

  • 12 — DATE ;

  • 13 — TIME WITHOUT TIME ZONE ;

  • 14 — CHAR ;

  • 16 — BIGINT ;

  • 23 — BOOLEAN ;

  • 24 — DECFLOAT(16) ;

  • 25 — DECFLOAT(34) ;

  • 26 — INT128 ;

  • 27 — DOUBLE PRECISION ;

  • 28 — TIME WITH TIME ZONE ;

  • 29 — TIMESTAMP AVEC FUSEAU HORAIRE ;

  • 35 — TIMESTAMP SANS FUSEAU HORAIRE ;

  • 37 — VARCHAR ;

  • 40 — CSTRING ;

  • 45 — id. du blob ;

  • 261 — BLOB.

RDB$FIELD_SCALE

SMALLINT

L’échelle pour un argument entier ou à virgule. C’est l’indice du nombre 10.

RDB$FIELD_LENGTH

SMALLINT

Longueur de l’argument en octets :

  • 1 — pour BOOLEAN ;

  • 2 — pour SMALLINT ;

  • 4 — pour INTEGER ;

  • 4 — pour DATE ;

  • 4 — pour TIME WITHOUT TIME ZONE ;

  • 8 — pour TIME WITH TIME ZONE ;

  • 8 — pour BIGINT ;

  • 8 — pour DOUBLE PRECISION ;

  • 8 — pour TIMESTAMP WITHOUT TIME ZONE ;

  • 8 — pour DECFLOAT(16) ;

  • 8 — pour l’id du blob ;

  • 12 — pour TIMESTAMP WITH TIME ZONE ;

  • 16 — pour DECFLOAT(34) ;

  • 16 — pour INT128.

RDB$FIELD_SUB_TYPE

SMALLINT

Pour l’argument de type de données BLOB, spécifie le sous-type BLOB.

RDB$CHARACTER_SET_ID

SMALLINT

L’identifiant du jeu de caractères pour l’argument caractère.

RDB$FIELD_PRECISION

SMALLINT

Le nombre de chiffres de précision autorisés pour le type de données de l’argument.

RDB$CHARACTER_LENGTH

SMALLINT

La longueur d’un argument CHAR ou VARCHAR en caractères (pas en octets).

RDB$PACKAGE_NAME

CHAR(63)

Le nom du paquet de fonctions (s’il s’agit d’une fonction emballée) dans lequel le paramètre est utilisé.

RDB$ARGUMENT_NAME

CHAR(63)

Nom du paramètre.

RDB$FIELD_SOURCE

CHAR(63)

Le nom du domaine créé par l’utilisateur (en utilisant la référence du domaine au lieu du type), ou le domaine construit automatiquement par le système pour le paramètre de la fonction. Dans le second cas, le nom commencera par les caractères RDB$.

RDB$DEFAULT_VALUE

BLOB BLR

Valeur par défaut dans le langage BLR.

RDB$DEFAULT_SOURCE

BLOB TEXT

La valeur par défaut dans le langage SQL d’origine.

RDB$COLLATION_ID

SMALLINT

L’identifiant de l’ordre de tri utilisé pour le paramètre caractère.

RDB$NULL_FLAG

SMALLINT

Un signe qu’une valeur NULL vide est acceptable.

RDB$ARGUMENT_MECHANISM

SMALLINT

Mécanisme de transfert de paramètres pour les fonctions non Legacy :

  • 0 — par valeur ;

  • 1 — par référence ;

  • 2 — par descripteur ;

  • 3 — via un descripteur BLOB.

RDB$FIELD_NAME

CHAR(63)

Le nom de la colonne à laquelle le paramètre est référencé en utilisant la clause TYPE OF COLUMN.

RDB$RELATION_NAME

CHAR(63)

Le nom de la table à laquelle le paramètre fait référence en utilisant la clause TYPE OF COLUMN.

RDB$SYSTEM_FLAG

SMALLINT

Indique si le paramètre est défini par le système (valeur 1 et plus) ou par l’utilisateur (valeur 0).

RDB$DESCRIPTION

BLOB TEXT

Texte d’une note de paramètre facultative.

RDB$FUNCTIONS

Description des fonctions stockées ou externes.

Table 1. Description des colonnes de la table RDB$FUNCTIONS
Nom de la colonne Type de données Description

RDB$FUNCTION_NAME

CHAR(63)

Nom de la fonction.

RDB$FUNCTION_TYPE

SMALLINT

Non utilisé actuellement.

RDB$QUERY_NAME

CHAR(63)

Non utilisé actuellement.

RDB$DESCRIPTION

BLOB TEXT

Tout texte dans le commentaire de la fonction.

RDB$MODULE_NAME

VARCHAR(255)

Nom du module externe (bibliothèque dynamique) où se trouve le code de la fonction.

RDB$ENTRYPOINT

CHAR(255)

Le nom du point d’entrée dans la bibliothèque où se trouve cette fonction.

RDB$RETURN_ARGUMENT

SMALLINT

Le numéro de position de l’argument de retour dans la liste des paramètres correspondant aux arguments d’entrée.

RDB$SYSTEM_FLAG

SMALLINT

Attribut de définition de la fonction :

  • 0 — défini par le système ;

  • 1 — défini par l’utilisateur.

RDB$ENGINE_NAME

CHAR(63)

Nom du moteur pour utiliser les fonctions externes. Habituellement UDR.

RDB$PACKAGE_NAME

CHAR(63)

Le nom du package si la fonction est packagée.

RDB$PRIVATE_FLAG

SMALLINT

Pour les fonctions stockées non emballées, toujours NULL,
pour les fonctions emballées:
* 0 — si la fonction est décrite dans l’en-tête du paquet ; * 1 — si la fonction est décrite ou implémentée uniquement dans le corps du paquet (non décrit dans l’en-tête).

RDB$FUNCTION_SOURCE

BLOB TEXT

Le code source de la fonction en langage SQL.

RDB$FUNCTION_ID

SMALLINT

Identifiant unique de la fonction.

RDB$FUNCTION_BLR

BLOB BLR

Représentation binaire (BLR) du code de la fonction.

RDB$VALID_BLR

SMALLINT

Indique si le texte de la fonction mémorisée reste correct après la dernière modification de la fonction à l’aide de l’opérateur ALTER FUNCTION.

RDB$DEBUG_INFO

BLOB

Contient des informations de débogage sur les variables utilisées dans la fonction stockée.

RDB$SECURITY_CLASS

CHAR(63)

Peut pointer vers la classe de sécurité définie dans la table système RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur est le propriétaire (créateur) de la fonction.

RDB$LEGACY_FLAG

SMALLINT

Le style d’héritage de la fonction.

1 — si la fonction est décrite dans le style héritage (DECLARE EXTERNAL FUNCTION),
sinon 0 (CREATE FUNCTION).

RDB$DETERMINISTIC_FLAG

SMALLINT

Indicateur de fonction déterministe.

1 — si la fonction est déterministe (DETERMINISTIC)
sinon — 0.

RDB$SQL_SECURITY

BOOLEAN

Avec quels droits la fonction est exécutée :

  • TRUE — avec les droits de l’utilisateur définissant (SQL SECURITY DEFINER) ;

  • FALSE — avec les droits de l’utilisateur appelant (SQL SECURITY INVOKER) ;

  • NULL — les privilèges d’exécution sont hérités du paquet.

RDB$GENERATORS

Informations sur les générateurs (séquences).

Table 1. Description des colonnes de la table RDB$GENERATORS
Nom de la colonne Type de données Description

RDB$GENERATOR_NAME

CHAR(63)

Nom unique du générateur.

RDB$GENERATOR_ID

SMALLINT

Un identifiant unique attribué par le système pour le générateur.

RDB$SYSTEM_FLAG

SMALLINT

Indication :

0 — le générateur est défini par l’utilisateur,
1 ou plus — système défini.
6 — générateur interne pour la colonne d’identité.

RDB$DESCRIPTION

BLOB TEXT

Le texte arbitraire d’une note de générateur.

RDB$SECURITY_CLASS

CHAR(63)

Peut pointer vers la classe de sécurité définie dans la table système RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur est le propriétaire (créateur) du générateur.

RDB$INITIAL_VALUE

BIGINT

Mémorise la valeur de démarrage du générateur ou la valeur du générateur définie lors du redémarrage précédent (WITH RESTART).

RDB$GENERATOR_INCREMENT

INTEGER

Pas d’incrémentation du générateur lors de l’utilisation de l’opérateur NEXT VALUE FOR.

RDB$INDEX_SEGMENTS

Segments d’index et positions d’index. Le tableau décrit toutes les colonnes de la table incluses dans un index particulier. Une ligne distincte est créée pour chaque colonne d’index dans ce tableau.

Table 1. Description des colonnes de la table RDB$INDEX_SEGMENTS
Nom de la colonne Type de données Description

RDB$INDEX_NAME

CHAR(63)

Nom de l’index auquel appartient ce segment. Doit correspondre à la fiche de la table système RDB$INDICES.

RDB$FIELD_NAME

CHAR(63)

Nom d’une des colonnes incluses dans l’index. Doit correspondre à la valeur de la colonne RDB$FIELD_NAME de la table RDB$RELATION_FIELDS.

RDB$FIELD_POSITION

SMALLINT

La position de la colonne dans l’index. La numérotation commence à partir de zéro.

RDB$STATISTICS

DOUBLE PRECISION

La dernière valeur connue (calculée) de l’indice de sélectivité pour cette colonne.

RDB$INDICES

Définition des index de la base de données (créés par l’utilisateur ou le système). Pour chaque colonne de table incluse dans l’index, il existe une ligne de table système RDB$INDEX_SEGMENTS où les caractéristiques de la colonne d’index sont décrites.

Table 1. Description des colonnes de la table RDB$INDICES
Nom de la colonne Type de données Description

RDB$INDEX_NAME

CHAR(63)

Un nom d’index unique donné par l’utilisateur ou généré automatiquement par le système.

RDB$RELATION_NAME

CHAR(63)

Nom de la table à laquelle l’index s’applique. Correspond à RDB$RELATION_NAME dans la ligne de table RDB$RELATIONS.

RDB$INDEX_ID

SMALLINT

L’identifiant interne (système) de l’index.

RDB$UNIQUE_FLAG

SMALLINT

Indique si l’index est unique :

  • 0 — pas unique ;

  • 1 — unique.

RDB$DESCRIPTION

BLOB TEXT

Le texte de commentaire arbitraire pour l’index.

RDB$SEGMENT_COUNT

SMALLINT

Nombre de segments (colonnes) dans l’index.

RDB$INDEX_INACTIVE

SMALLINT

Indique si l’index est actuellement actif :

  • 0 — actif ;

  • 1 — inactif ;

  • 3 — état pour la clé étrangère seulement. Cet état n’existe que pendant la récupération des données. Elle est nécessaire pour distinguer l’état partiellement "inactif" de certains index de l’état inactif de tous les index (gbak -i).

RDB$INDEX_TYPE

SMALLINT

Direction de l’indice :

  • 0 — ascendant ;

  • 1 — descendant.

RDB$FOREIGN_KEY

CHAR(63)

Nom de la contrainte de clé étrangère associée, si elle est présente.

RDB$SYSTEM_FLAG

SMALLINT

Indique si l’index est défini par le système (valeur 1 ou supérieure) ou par l’utilisateur (valeur 0).

RDB$EXPRESSION_BLR

BLOB BLR

Une expression écrite en langage de représentation binaire (BLR), Utilisé pour calculer les valeurs clés des index par expression.

RDB$EXPRESSION_SOURCE

BLOB TEXT

Texte source de l’expression des indices à calculer.

RDB$STATISTICS

DOUBLE PRECISION

Stocke la dernière sélectivité de l’indice calculée à l’aide de l’opérateur SET STATISTICS.

RDB$CONDITION_BLR

BLOB BLR

Expression écrite en langage de représentation binaire (BLR), utilisée pour restreindre l’ensemble des enregistrements indexés.

RDB$CONDITION_SOURCE

BLOB TEXT

Texte source de l’expression permettant de restreindre l’ensemble des enregistrements indexés.

RDB$KEYWORDS

Mots clés et mots réservés.

Table 1. Description des colonnes de la table RDB$KEYWORDS
Nom de la colonne Type de données Description

RDB$KEYWORD_NAME

CHAR(63)

Mot clé.

RDB$KEYWORD_RESERVED

BOOLEAN

Si le mot clé est un mot clé réservé.

RDB$LOG_FILES

Non utilisé dans la présente version.

Table 1. Description des colonnes de la table RDB$LOG_FILES
Nom de la colonne Type de données Description

RDB$FILE_NAME

VARCHAR(255)

Non utilisé.

RDB$FILE_SEQUENCE

SMALLINT

Non utilisé.

RDB$FILE_LENGTH

INTEGER

Non utilisé.

RDB$FILE_PARTITIONS

SMALLINT

Non utilisé.

RDB$FILE_P_OFFSET

INTEGER

Non utilisé.

RDB$FILE_FLAGS

SMALLINT

Non utilisé.

RDB$PACKAGES

Informations sur les paquets PSQL.

Table 1. Description des colonnes de la table RDB$PACKAGES
Nom de la colonne Type de données Description

RDB$PACKAGE_NAME

CHAR(63)

Nom unique du paquet.

RDB$PACKAGE_HEADER_SOURCE

BLOB TEXT

Le code source de l’en-tête du paquet en langage SQL.

RDB$PACKAGE_BODY_SOURCE

BLOB TEXT

Code source du corps du paquet en langage SQL.

RDB$VALID_BODY_FLAG

SMALLINT

Indique si le texte du corps du paquet reste correct après la dernière modification ou recréation de l’en-tête du paquet.

RDB$SECURITY_CLASS

CHAR(63)

Peut pointer vers la classe de sécurité définie dans la table système RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur - le propriétaire (créateur) du paquet.

RDB$SYSTEM_FLAG

SMALLINT

Indique que le paquet est défini par l’utilisateur (valeur 0) ou par le système (valeur 1 ou supérieure).

RDB$DESCRIPTION

BLOB TEXT

Le texte arbitraire d’une note sur le paquet.

RDB$SQL_SECURITY

BOOLEAN

Avec quels droits les procédures et fonctions du paquet sont exécutées :

  • TRUE — avec les droits de l’utilisateur définissant (SQL SECURITY DEFINER) ;

  • FALSE — avec les droits de l’utilisateur appelant (SQL SECURITY INVOKER).

RDB$PAGES

Informations sur les pages de la base de données.

Table 1. Description des colonnes de la table RDB$PAGES
Nom de la colonne Type de données Description

RDB$PAGE_NUMBER

INTEGER

Le numéro unique de la page de la base de données créée physiquement.

RDB$RELATION_ID

SMALLINT

L’identifiant de la table pour laquelle cette page est allouée.

RDB$PAGE_SEQUENCE

INTEGER

Numéro de page consécutif par rapport aux autres pages attribuées à ce tableau.

RDB$PAGE_TYPE

SMALLINT

Décrit le type de page. Pour l’utilisation du système.

RDB$PROCEDURE_PARAMETERS

Décrit les paramètres des procédures stockées.

Table 1. Description des colonnes de la table RDB$PROCEDURE_PARAMETERS
Nom de la colonne Type de données Description

RDB$PARAMETER_NAME

CHAR(63)

Nom du paramètre.

RDB$PROCEDURE_NAME

CHAR(63)

Le nom de la procédure dans laquelle le paramètre est utilisé.

RDB$PARAMETER_NUMBER

SMALLINT

Numéro séquentiel du paramètre.

RDB$PARAMETER_TYPE

SMALLINT

Indique si le paramètre est une entrée (valeur 0) ou une sortie (valeur 1).

RDB$FIELD_SOURCE

CHAR(63)

Le nom du domaine créé par l’utilisateur (lorsqu’on utilise une référence de domaine au lieu d’un type), ou le domaine construit automatiquement par le système pour le paramètre de la procédure. Dans le second cas, le nom commencera par les caractères RDB$.

RDB$DESCRIPTION

BLOB TEXT

Texte d’une note de paramètre facultative.

RDB$SYSTEM_FLAG

SMALLINT

Indique si le paramètre est défini par le système (valeur 1 et plus) ou par l’utilisateur (valeur 0).

RDB$DEFAULT_VALUE

BLOB BLR

Valeur par défaut dans le langage BLR.

RDB$DEFAULT_SOURCE

BLOB TEXT

La valeur par défaut dans le langage SQL d’origine.

RDB$COLLATION_ID

SMALLINT

L’identifiant de l’ordre de tri utilisé pour le paramètre caractère.

RDB$NULL_FLAG

SMALLINT

Un signe qu’une valeur vide NULL est valide.

RDB$PARAMETER_MECHANISM

SMALLINT

Mécanisme de transfert des paramètres :

  • 0 — par valeur ;

  • 1 — par référence ;

  • 2 — via un descripteur ;

  • 3 — via un descripteur BLOB.

RDB$FIELD_NAME

CHAR(63)

Le nom de la colonne à laquelle le paramètre est référencé en utilisant la clause TYPE OF COLUMN.

RDB$RELATION_NAME

CHAR(63)

Le nom de la table à laquelle le paramètre fait référence en utilisant la clause TYPE OF COLUMN.

RDB$PACKAGE_NAME

CHAR(63)

Nom du paquet de procédures (s’il s’agit d’une procédure emballée) dans lequel le paramètre est utilisé.

RDB$PROCEDURES

Décrit les procédures stockées.

Table 1. Description des colonnes de la table RDB$PROCEDURES
Nom de la colonne Type de données Description

RDB$PROCEDURE_NAME

CHAR(63)

Le nom de la procédure stockée.

RDB$PROCEDURE_ID

SMALLINT

L’identifiant unique de la procédure.

RDB$PROCEDURE_INPUTS

SMALLINT

Indique le nombre de paramètres d’entrée ou leur absence (valeur NULL).

RDB$PROCEDURE_OUTPUTS

SMALLINT

Indique le nombre de paramètres de sortie ou leur absence (valeur NULL).

RDB$DESCRIPTION

BLOB TEXT

Texte arbitraire d’une note de procédure.

RDB$PROCEDURE_SOURCE

BLOB TEXT

Code source de la procédure en langage SQL.

RDB$PROCEDURE_BLR

BLOB BLR

Représentation binaire (BLR) du code de procédure.

RDB$SECURITY_CLASS

CHAR(63)

Peut pointer vers la classe de sécurité définie dans la table système RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur est le propriétaire (créateur) de la procédure.

RDB$RUNTIME

BLOB

Description des métadonnées de la procédure. Utilisation interne pour l’optimisation.

RDB$SYSTEM_FLAG

SMALLINT

Indique que la procédure est définie par l’utilisateur (valeur 0) ou par le système (valeur 1 ou supérieure).

RDB$PROCEDURE_TYPE

SMALLINT

Type de procédure :

  • 1 — procédure stockée sélective (contient l’opérateur SUSPEND) ;

  • 2 est une procédure stockée exécutable.

RDB$VALID_BLR

SMALLINT

Indique si le texte de la procédure stockée reste correct après la dernière modification de la procédure à l’aide de l’instruction ALTER PROCEDURE.

RDB$DEBUG_INFO

BLOB

Contient des informations de débogage sur les variables utilisées dans la procédure stockée.

RDB$ENGINE_NAME

CHAR(63)

Le nom du moteur pour l’utilisation des procédures externes. Habituellement UDR.

RDB$ENTRYPOINT

CHAR(255)

Le nom du point d’entrée dans la bibliothèque où se trouve cette procédure.

RDB$PACKAGE_NAME

CHAR(63)

Le nom du paquet si la procédure est packagées.

RDB$PRIVATE_FLAG

SMALLINT

Pour les procédures stockées non packagées: toujours NULL.

Pour les procédures packagées:
0 — si la procédure est décrite dans l’en-tête du paquet et
1 — si la procédure est décrite ou mise en œuvre uniquement dans le corps du paquet (pas dans l’en-tête)

RDB$SQL_SECURITY

BOOLEAN

Avec quels droits la procédure est exécutée :

  • TRUE — avec les droits de l’utilisateur définissant (SQL SECURITY DEFINER) ;

  • FALSE — avec les droits de l’utilisateur appelant (SQL SECURITY INVOKER) ;

  • NULL — les privilèges d’exécution sont hérités du paquet.

RDB$PUBLICATION_TABLES

Tables inclus dans un ensemble de réplication (publication).

Table 1. Description des colonnes de la table RDB$PUBLICATION_TABLES
Nom de la colonne Type de données Description

RDB$PUBLICATION_NAME

CHAR(63)

Nom de la publication.

RDB$TABLE_NAME

CHAR(63)

Nom de la table.

RDB$PUBLICATIONS

Publication — un ensemble de tables pour la réplication.

Table 1. Description des colonnes de la table RDB$PUBLICATIONS
Nom de la colonne Type de données Description

RDB$PUBLICATION_NAME

CHAR(63)

Nom de la publication.

RDB$OWNER_NAME

CHAR(63)

Propriétaire. Le nom de l’utilisateur qui a créé la publication.

RDB$SYSTEM_FLAG

SMALLINT

Indique que la publication est définie par l’utilisateur (valeur 0) ou par le système (valeur 1 ou supérieure).

RDB$ACTIVE_FLAG

SMALLINT

La publication est-elle active ? 1 — publication active, 0 — publication désactivée.

RDB$AUTO_ENABLE

SMALLINT

Indication que les nouvelles tables sont automatiquement ajoutés à la publication.

1 — les nouvelles tables sont automatiquement ajoutés à la publication,
0 — non ajouté (ajout manuel requis).

Note

Dans Firebird 4.0, il ne peut y avoir qu’une seule publication système — la publication par défaut nommée RDB$DEFAULT. Dans les futures versions de Firebird, il sera possible de créer plusieurs publications personnalisées.

RDB$REF_CONSTRAINTS

Descriptions des contraintes de base de données nommées (clés étrangères).

Table 1. Description des colonnes de la table RDB$REF_CONSTRAINTS
Nom de la colonne Type de données Description

RDB$CONSTRAINT_NAME

CHAR(63)

Nom de la restriction de la clé externe. Défini par l’utilisateur ou généré automatiquement par le système.

RDB$CONST_NAME_UQ

CHAR(63)

Le nom de la contrainte de clé primaire ou unique référencée par la clause REFERENCES dans cette contrainte.

RDB$MATCH_OPTION

CHAR(7)

Non utilisés. La valeur actuelle est FULL dans tous les cas.

RDB$UPDATE_RULE

CHAR(11)

Actions d’intégrité référentielle applicables à cette clé étrangère lorsque la clé primaire (unique) de la table parente est modifiée : RESTRICT, NO ACTION, CASCADE, SET NULL, SET DEFAULT.

RDB$DELETE_RULE

CHAR(11)

Actions d’intégrité référentielle applicables à cette clé étrangère lorsque la clé primaire (unique) de la table parente est supprimée : RESTRICT, NO ACTION, CASCADE, SET NULL, SET DEFAULT.

RDB$RELATION_CONSTRAINTS

Description de toutes les contraintes au niveau de la table : contraintes primaires, uniques, clés étrangères, CHECK, NOT NULL.

Table 1. Description des colonnes de la table RDB$RELATION_CONSTRAINTS
Nom de la colonne Type de données Description

RDB$CONSTRAINT_NAME

CHAR(63)

Nom de la contrainte au niveau de la table, défini par l’utilisateur ou attribué automatiquement par le système.

RDB$CONSTRAINT_TYPE

CHAR(11)

Contient le nom du type de contrainte : CLÉ PRIMAIRE, UNIQUE, CLÉ ÉTRANGÈRE, CONTRÔLE, NON NUL.

RDB$RELATION_NAME

CHAR(63)

Nom de la table à laquelle cette restriction s’applique.

RDB$DEFERRABLE

CHAR(3)

Pour l’instant, dans tous les cas, NON.

RDB$INITIALLY_DEFERRED

CHAR(3)

Pour l’instant, dans tous les cas, NON.

RDB$INDEX_NAME

CHAR(63)

Nom de l’index qui supporte cette contrainte (contient NULL si la contrainte est CHECK ou NOT NULL).

RDB$RELATION_FIELDS

Caractéristiques des colonnes des tables et des vues.

Table 1. Description des colonnes de la table RDB$RELATION_FIELDS
Nom de la colonne Type de données Description

RDB$FIELD_NAME

CHAR(63)

Nom de la colonne.

RDB$RELATION_NAME

CHAR(63)

Le nom de la table (vue) qui contient la colonne décrite.

RDB$FIELD_SOURCE

CHAR(63)

Contient le nom du domaine (défini par l’utilisateur ou généré automatiquement par le système) sur lequel cette colonne est basée.

RDB$QUERY_NAME

CHAR(63)

Ce champ du système n’est pas utilisée.

RDB$BASE_FIELD

CHAR(63)

A voir uniquement. Nom de la colonne de la table de base

RDB$EDIT_STRING

VARCHAR(127)

Non utilisé.

RDB$FIELD_POSITION

SMALLINT

La position d’une colonne dans un tableau ou une vue. La numérotation commence à 0.

RDB$QUERY_HEADER

BLOB TEXT

Non utilisé.

RDB$UPDATE_FLAG

SMALLINT

Indique si la colonne est une colonne régulière (valeur 1) ou une colonne calculée (valeur 0).

RDB$FIELD_ID

SMALLINT

Dans cette version du système, la valeur de la colonne RDB$FIELD_POSITION est exactement la même.

RDB$VIEW_CONTEXT

SMALLINT

Pour une colonne de vue, il s’agit de l’identifiant interne de la table de base d’où provient le champ.

RDB$DESCRIPTION

BLOB TEXT

Note sur une colonne de table ou de vue.

RDB$DEFAULT_VALUE

BLOB BLR

Une valeur par défaut écrite en binaire (BLR) est une clause DEFAULT si elle est présente lors de la description d’une colonne de table (vue).

RDB$SYSTEM_FLAG

SMALLINT

Indique s’il est défini par l’utilisateur (valeur 0) ou par le système (valeur 1 ou supérieure).

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de cette colonne.

RDB$COMPLEX_NAME

CHAR(63)

Non utilisé.

RDB$NULL_FLAG

SMALLINT

Indique si la colonne autorise les valeurs NULL (valeur NULL) ou non (valeur 1).

RDB$DEFAULT_SOURCE

BLOB TEXT

Le texte original de la clause DEFAULT, si elle existe.

RDB$COLLATION_ID

SMALLINT

L’identifiant de la séquence de tri en tant que partie du jeu de caractères pour la colonne non par défaut.

RDB$GENERATOR_NAME

CHAR(63)

Nom du générateur interne pour implémenter la colonne d’identité.

RDB$IDENTITY_TYPE

SMALLINT

Pour les colonnes IDENTITY définies

GENERATED BY DEFAULT stocke la valeur 0,
GENERATED ALWAYS enregistre la valeur 1.

Pour les colonnes non IDENTITY, enregistre NULL.

RDB$RELATIONS

Stocke certaines caractéristiques des tables et des vues.

Table 1. Description des colonnes de la table RDB$RELATIONS
Nom de la colonne Type de données Description

RDB$VIEW_BLR

BLOB BLR

La représentation contient des spécifications de requête en langage BLR. Pour une table, le champ contient NULL.

RDB$VIEW_SOURCE

BLOB TEXT

Pour une vue, contient le texte source SQL original de la requête (y compris les commentaires personnalisés). Pour une table, le champ contient NULL.

RDB$DESCRIPTION

BLOB TEXT

Tout texte annotant le tableau (présentation).

RDB$RELATION_ID

SMALLINT

Identifiant interne de la table (vue).

RDB$SYSTEM_FLAG

SMALLINT

Indique si la table (vue) a été créée par l’utilisateur (valeur 0) ou par le système (valeur 1 ou supérieure).

RDB$DBKEY_LENGTH

SMALLINT

La longueur totale de la clé. Pour une table, il s’agit de 8 octets. Pour une vue, c’est 8 multiplié par le nombre de tables auxquelles la vue fait référence.

RDB$FORMAT

SMALLINT

Usage interne.

RDB$FIELD_ID

SMALLINT

Nombre de colonnes dans la table (vue).

RDB$RELATION_NAME

CHAR(63)

Le nom d’une table ou d’une vue.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à une classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de cette table (vue).

RDB$EXTERNAL_FILE

VARCHAR(255)

Chemin complet du fichier de données externe si la table est décrite avec FICHIER EXTERNE.

RDB$RUNTIME

BLOB

Description des métadonnées de la table. Utilisation interne pour l’optimisation.

RDB$EXTERNAL_DESCRIPTION

BLOB

Annotation arbitraire vers un fichier de table externe.

RDB$OWNER_NAME

CHAR(31)

Le nom de l’utilisateur est le propriétaire (créateur) de la table ou de la vue.

RDB$DEFAULT_CLASS

CHAR(31)

Classe de sécurité par défaut. S’applique lorsqu’une nouvelle colonne est ajoutée au tableau.

RDB$FLAGS

SMALLINT

Drapeaux internes.

RDB$RELATION_TYPE

SMALLINT

Le type d’objet décrit :

  • 0 - table permanente créée par l’utilisateur ou table système ;

  • 1 - vue ;

  • 2 - table externe ;

  • 3 - table virtuelle (tables de surveillance MON$, pseudo-tables de sécurité SEC$) ;

  • 4 - niveau de connexion GTT (PRESERVE ROWS) ;

  • 5 - GTT de niveau transactionnel (DELETE ROWS).

RDB$SQL_SECURITY

BOOLEAN

Avec quels droits les colonnes calculées sont calculées :

  • TRUE — avec les droits de l’utilisateur définissant (SQL SECURITY DEFINER) ;

  • FALSE ou NULL — avec les droits de l’utilisateur appelant (SQL SECURITY INVOKER).

RDB$ROLES

Définition des rôles.

Table 1. Description des colonnes de la table RDB$ROLES
Nom de la colonne Type de données Description

RDB$ROLE_NAME

CHAR(63)

Nom du rôle.

RDB$OWNER_NAME

CHAR(63)

Le nom de l’utilisateur-propriétaire du rôle.

RDB$DESCRIPTION

BLOB TEXT

Le texte arbitraire de la note de rôle.

RDB$SYSTEM_FLAG

SMALLINT

Drapeau système.

RDB$SECURITY_CLASS

CHAR(63)

Peut faire référence à la classe de sécurité définie dans la table RDB$SECURITY_CLASSES pour appliquer des restrictions de contrôle d’accès à tous les utilisateurs de ce rôle.

RDB$SYSTEM_PRIVILEGES

BINARY(8)

Un bit défini avec les privilèges système accordés au rôle, avec les bits suivants :

  • 0 - non utilisé ;

  • 1 - GESTION_UTILISATEURS ;

  • 2 - READ_RAW_PAGES ;

  • 3 - CREATE_USER_TYPES ;

  • 4 - USE_NBACKUP_UTILITY ;

  • 5 - CHANGE_SHUTDOWN_MODE ;

  • 6 - TRACE_ANY_ATTACHMENT ;

  • 7 - MONITOR_ANY_ATTACHMENT ;

  • 8 - ACCESS_SHUTDOWN_DATABASE ;

  • 9 - CREATE_DATABASE ;

  • 10 - DROP_DATABASE ;

  • 11 - USE_GBAK_UTILITY ;

  • 12 - USE_GSTAT_UTILITY ;

  • 13 - USE_GFIX_UTILITY ;

  • 14 - IGNORE_DB_TRIGGERS ;

  • 15 - CHANGE_HEADER_SETTINGS ;

  • 16 - SELECT_ANY_OBJECT_IN_DATABASE ;

  • 17 - ACCESS_ANY_OBJECT_IN_DATABASE ;

  • 18 - MODIFY_ANY_OBJECT_IN_DATABASE ;

  • 19 - CHANGE_MAPPING_RULES ;

  • 20 - USE_GRANTED_BY_CLAUSE ;

  • 21 - GRANT_REVOKE_ON_ANY_OBJECT ;

  • 22 - GRANT_REVOKE_ANY_DDL_RIGHT ;

  • 23 - CREATE_PRIVILEGED_ROLES ;

  • 24 - GET_DBCRYPT_INFO ;

  • 25 - MODIFY_EXT_CONN_POOL ;

  • 26 - REPLICATE_INTO_DATABASE.

RDB$SECURITY_CLASSES

Les listes de contrôle d’accès.

Table 1. Description des colonnes de la table RDB$SECURITY_CLASSES
Nom de la colonne Type de données Description

RDB$SECURITY_CLASS

CHAR(63)

Le nom de la classe de sécurité.

RDB$ACL

BLOB ACL

Liste de contrôle d’accès associée à une classe de sécurité. Liste des utilisateurs et de leurs autorisations.

RDB$DESCRIPTION

BLOB TEXT

Tout texte de la note de classe de sécurité.

RDB$TIME_ZONES

Une table virtuelle contenant une liste des fuseaux horaires pris en charge par le serveur.

Table 1. Description des colonnes de la table RDB$TIME_ZONES
Nom de la colonne Type de données Description

RDB$TIME_ZONE_ID

INTEGER

Identifiant du fuseau horaire.

RDB$TIME_ZONE_NAME

CHAR(63)

Nom du fuseau horaire

RDB$TRANSACTIONS

RDB$TRANSACTIONS stocke l’état des transactions distribuées et autres qui sont préparées pour une confirmation en deux phases avec un message explicitement préparé.

Table 1. Description des colonnes de la table RDB$TRANSACTIONS
Nom de la colonne Type de données Description

RDB$TRANSACTION_ID

INTEGER

L’identifiant unique de la transaction faisant l’objet du suivi.

RDB$TRANSACTION_STATE

SMALLINT

Statut de la transaction :

  • 0 — en attente ;

  • 1 — confirmé ;

  • 2 — annulé.

RDB$TIMESTAMP

TIMESTAMP

Non utilisé.

RDB$TRANSACTION_DESCRIPTION

BLOB

Décrit une transaction préparée et peut être un message utilisateur entrant isc_prepare_transaction2 même si ce n’est pas une transaction distribuée. Peut être utilisé en cas de perte de connexion qui ne peut être rétablie.

RDB$TRIGGER_MESSAGES

Messages des déclencheurs.

Table 1. Description des colonnes de la table RDB$TRIGGER_MESSAGES
Nom de la colonne Type de données Description

RDB$TRIGGER_NAME

CHAR(63)

Le nom du déclencheur auquel ce message est lié.

RDB$MESSAGE_NUMBER

SMALLINT

Numéro de message dans un déclencheur (1 à 32767).

RDB$MESSAGE

VARCHAR(1023)

Texte du message de déclenchement.

RDB$TRIGGERS

Descriptions des déclencheurs.

Table 1. Description des colonnes de la table RDB$TRIGGERS
Nom de la colonne Type de données Description

RDB$TRIGGER_NAME

CHAR(63)

Nom du déclencheur.

RDB$RELATION_NAME

CHAR(63)

Nom de la table ou de la vue pour laquelle le déclencheur est utilisé. Si le déclencheur est appliqué à un événement de base de données plutôt qu’à un événement de table, ce champ contient NULL.

RDB$TRIGGER_SEQUENCE

SMALLINT

La séquence (position) du déclencheur. Zéro signifie généralement qu’aucune séquence n’est définie.

RDB$TRIGGER_TYPE

BIGINT

L’événement auquel le déclencheur est appelé :

  • 1 — AVANT INESRT ;

  • 2 — AVANT L’INSERTION ;

  • 3 — AVANT MISE À JOUR ;

  • 4 — AVANT LA MISE À JOUR ;

  • 5 — AVANT LA SUPPRESSION ;

  • 6 — APRÈS LA SUPPRESSION ;

  • 17 — AVANT L’INSERTION OU LA MISE À JOUR ;

  • 18 — AFTER INSERT OR UPDATE ;

  • 25 — AVANT L’INSERTION OU LA SUPPRESSION ;

  • 26 — APRÈS INSERTION OU SUPPRESSION ;

  • 27 — AVANT LA MISE À JOUR OU LA SUPPRESSION ;

  • 28 — APRÈS MISE À JOUR OU SUPPRESSION ;

  • 113 — AVANT L’INSERTION OU LA MISE À JOUR OU LA SUPPRESSION ;

  • 114 — AVANT L’INSERTION OU LA MISE À JOUR OU LA SUPPRESSION ;

  • 8192 — ON CONNECT ;

  • 8193 — ON DISCONNECT ;

  • 8194 — SUR LE DÉBUT DE LA TRANSACTION ;

  • 8195 — ON TRANSACTION COMMIT ;

  • 8196 — "ON TRANSACTION ROLLBACK".

Voir ci-dessous pour une description des événements déclencheurs DDL.

RDB$TRIGGER_SOURCE

BLOB TEXT

Stocke le code source du déclencheur dans PSQL.

RDB$TRIGGER_BLR

BLOB BLR

Stocke le déclencheur en code binaire BLR.

RDB$DESCRIPTION

BLOB TEXT

Texte / note sur le déclencheur.

RDB$TRIGGER_INACTIVE

SMALLINT

Indique si le déclencheur est actuellement inactif (1) ou actif (0).

RDB$SYSTEM_FLAG

SMALLINT

Flag — Le déclencheur est défini par l’utilisateur (0) ou par le système (1 ou plus).

RDB$FLAGS

SMALLINT

Usage interne.

RDB$VALID_BLR

SMALLINT

Indique si le texte du déclencheur reste correct après la dernière modification du déclencheur à l’aide de l’opérateur ALTER TRIGGER.

RDB$DEBUG_INFO

BLOB

Contient des informations de débogage sur les variables utilisées dans le déclencheur.

RDB$ENGINE_NAME

CHAR(63)

Nom du moteur pour l’utilisation des déclencheurs externes. Habituellement UDR.

RDB$ENTRYPOINT

CHAR(255)

Le nom du point d’entrée dans la bibliothèque où se trouve ce déclencheur.

RDB$SQL_SECURITY

BOOLEAN

Avec quels droits le déclencheur est exécuté :

  • TRUE — avec les droits de l’utilisateur définissant (SQL SECURITY DEFINER) ;

  • FALSE — avec les droits de l’utilisateur appelant (SQL SECURITY INVOKER) ;

  • NULL — les privilèges d’exécution sont hérités de la table.

Pour les déclencheurs DDL, le type de déclencheur (RDB$TRIGGER_TYPE) est obtenu par un OU bit à bit sur la phase de l’événement (0 - BEFORE, 1 - AFTER) et tous les types d’événements listés :

  • CREATE TABLE — 0x0000000000004002;

  • ALTER TABLE — 0x0000000000004004;

  • DROP TABLE — 0x0000000000004008;

  • CREATE PROCEDURE — 0x0000000000004010;

  • ALTER PROCEDURE — 0x0000000000004020;

  • DROP PROCEDURE — 0x0000000000004040;

  • CREATE FUNCTION — 0x0000000000004080;

  • ALTER FUNCTION — 0x0000000000004100;

  • DROP FUNCTION — 0x0000000000004200;

  • CREATE TRIGGER — 0x0000000000004400;

  • ALTER TRIGGER — 0x0000000000004800;

  • DROP TRIGGER — 0x0000000000005000;

  • CREATE EXCEPTION — 0x0000000000014000;

  • ALTER EXCEPTION — 0x0000000000024000;

  • DROP EXCEPTION — 0x0000000000044000;

  • CREATE VIEW — 0x0000000000084000;

  • ALTER VIEW — 0x0000000000104000;

  • DROP VIEW — 0x0000000000204000;

  • CREATE DOMAIN — 0x0000000000404000;

  • ALTER DOMAIN — 0x0000000000804000;

  • DROP DOMAIN — 0x0000000001004000;

  • CREATE ROLE — 0x0000000002004000;

  • ALTER ROLE — 0x0000000004004000;

  • DROP ROLE — 0x0000000008004000;

  • CREATE INDEX — 0x0000000010004000;

  • ALTER INDEX — 0x0000000020004000;

  • DROP INDEX — 0x0000000040004000;

  • CREATE SEQUENCE — 0x0000000080004000;

  • ALTER SEQUENCE — 0x0000000100004000;

  • DROP SEQUENCE — 0x0000000200004000;

  • CREATE USER — 0x0000000400004000;

  • ALTER USER — 0x0000000800004000;

  • DROP USER — 0x0000001000004000;

  • CREATE COLLATION — 0x0000002000004000;

  • DROP COLLATION — 0x0000004000004000;

  • ALTER CHARACTER SET — 0x0000008000004000;

  • CREATE PACKAGE — 0x0000010000004000;

  • ALTER PACKAGE — 0x0000020000004000;

  • DROP PACKAGE — 0x0000040000004000;

  • CREATE PACKAGE BODY — 0x0000080000004000;

  • DROP PACKAGE BODY — 0x0000100000004000;

  • CREATE MAPPING — 0x0000200000004000;

  • ALTER MAPPING — 0x0000400000004000;

  • DROP MAPPING — 0x0000800000004000;

  • ANY DDL STATEMENT — 0x7FFFFFFFFFFFDFFE.

Par exemple, le déclencheur

  • BEFORE CREATE PROCEDURE OR CREATE FUNCTION sera du type 0x0000000000004090,

  • AFTER CREATE PROCEDURE OR CREATE FUNCTION — 0x0000000000004091,

  • BEFORE DROP FUNCTION OR DROP EXCEPTION — 0x00000000000044200,

  • AFTER DROP FUNCTION OR DROP EXCEPTION — 0x00000000000044201,

  • BEFORE DROP TRIGGER OR DROP DOMAIN — 0x00000000001005000,

  • AFTER DROP TRIGGER OR DROP DOMAIN — 0x00000000001005001.

RDB$TYPES

Description des types de données énumérés.

Table 1. Description des colonnes de la table RDB$TYPES
Nom de la colonne Type de données Description

RDB$FIELD_NAME

CHAR(63)

Le nom du type de l’enum. Correspond au nom de la colonne pour laquelle ce type d’enum est défini.

RDB$TYPE

SMALLINT

Spécifie un identifiant pour le type. La séquence de chiffres est unique pour chaque type d’énumération :

  • 0 — table ;

  • 1 — vue ;

  • 2 — déclencheur ;

  • 3 — colonne calculée ;

  • 4 — vérifier ;

  • 5 — procédure.

RDB$TYPE_NAME

CHAR(63)

Une représentation textuelle pour un type énuméré.

RDB$DESCRIPTION

BLOB TEXT

Texte de note arbitraire pour le type énuméré.

RDB$SYSTEM_FLAG

SMALLINT

0 — défini par l’utilisateur
1 et plus — par le système.

RDB$USER_PRIVILEGES

L’autorité des utilisateurs du système.

Table 1. Description des colonnes de la table RDB$USER_PRIVILEGES
Nom de la colonne Type de données Description

RDB$USER

CHAR(63)

L’utilisateur, le rôle ou l’objet auquel ce privilège est accordé. Si un privilège système est utilisé comme bénéficiaire, la valeur du type énuméré RDB$SYSTEM_PRIVILEGES entre dans ce champ à la place du nom du privilège système :

  • 1 - GESTION_UTILISATEUR ;

  • 2 - READ_RAW_PAGES ;

  • 3 - CREATE_USER_TYPES ;

  • 4 - UTILISER_NBACKUP_UTILITY ;

  • 5 - CHANGE_SHUTDOWN_MODE ;

  • 6 - TRACE_ANY_ATTACHMENT ;

  • 7 - MONITOR_ANY_ATTACHMENT ;

  • 8 - ACCESS_SHUTDOWN_DATABASE ;

  • 9 - CREATE_DATABASE ;

  • 10 - DROP_DATABASE ;

  • 11 - USE_GBAK_UTILITY ;

  • 12 - USE_GSTAT_UTILITY ;

  • 13 - USE_GFIX_UTILITY ;

  • 14 - IGNORE_DB_TRIGGERS ;

  • 15 - CHANGE_HEADER_SETTINGS ;

  • 16 - SELECT_ANY_OBJECT_IN_DATABASE ;

  • 17 - ACCESS_ANY_OBJECT_IN_DATABASE ;

  • 18 - MODIFY_ANY_OBJECT_IN_DATABASE ;

  • 19 - CHANGE_MAPPING_RULES ;

  • 20 - USE_GRANTED_BY_CLAUSE ;

  • 21 - GRANT_REVOKE_ON_ANY_OBJECT ;

  • 22 - GRANT_REVOKE_ANY_DDL_RIGHT ;

  • 23 - CREATE_PRIVILEGED_ROLES.

RDB$GRANTOR

CHAR(63)

Le nom de l’utilisateur qui accorde l’autorité.

RDB$PRIVILEGE

CHAR(6)

Un privilège accordé dans la procuration :

  • A – all (tous les avantages);

  • S – select (ensemble de données);

  • I – insert (ajout de données);

  • U – update (changement de données);

  • D – delete (suppression d’une ligne);

  • R – reference (clé étrangère);

  • X – execute (mise en œuvre);

  • G – usage (en utilisant);

  • M – membership (adhésion).

RDB$GRANT_OPTION

SMALLINT

Si l’autorisation contient une autorisation WITH GRANT OPTION:

  • 0 – ne contient pas;

  • 1 – contient.

RDB$RELATION_NAME

CHAR(63)

Le nom de l’objet (table, rôle, procédure) auquel l’autorité est accordée.

RDB$FIELD_NAME

CHAR(63)

Le nom de la colonne à laquelle s’applique le privilège de niveau colonne (privilèges UPDATE et REFERENCES uniquement).

Si l’appartenance à un rôle est accordée, cette colonne contient NULL si le rôle est accordé de manière normale et D si le rôle est accordé en utilisant le mot-clé DEFAULT.

RDB$USER_TYPE

SMALLINT

Identifie le type d’utilisateur (ou d’objet) auquel le privilège doit être accordé :

  • 1 - vue ;

  • 2 - déclencheur ;

  • 5 - procédure ;

  • 8 - utilisateur ;

  • 13 - rôle ;

  • 15 - fonction ;

  • 18 - paquet ;

  • 20 - privilège du système.

RDB$OBJECT_TYPE

SMALLINT

Identifie le type d’objet auquel le privilège est accordé :

  • 0 - table ;

  • 1 - vue ;

  • 2 - déclencheur ;

  • 5 - procédure ;

  • 7 - exception ;

  • 8 - utilisateur ;

  • 9 - domaine ;

  • 11 - jeu de caractères ;

  • 13 - rôle ;

  • 14 - générateur (séquence) ;

  • 15 - fonction ;

  • 16 - Filtre BLOB ;

  • 17 - triage ;

  • 18 - paquet.

RDB$VIEW_RELATIONS

Décrit les relations d’une vue.

Table 1. Description des colonnes de la table RDB$VIEW_RELATIONS
Nom de la colonne Type de données Description

RDB$VIEW_NAME

CHAR(63)

Le nom de la vue.

RDB$RELATION_NAME

CHAR(63)

Le nom de la table, de la vue ou de la procédure stockée à laquelle la vue fait référence.

RDB$VIEW_CONTEXT

SMALLINT

L’alias (contexte) utilisé pour faire référence à une colonne dans une vue. A la même signification que l’alias utilisé dans le texte de la vue BLR elle-même dans la déclaration de requête de cette vue.

RDB$CONTEXT_NAME

CHAR(255)

Variante textuelle de l’alias donné dans la colonne RDB$VIEW_CONTEXT.

RDB$CONTEXT_TYPE

SMALLINT

Type de contexte :

  • 0 - table ;

  • 1 - vue ;

  • 2 - procédure stockée.

RDB$PACKAGE_NAME

CHAR(63)

Le nom du paquet pour la procédure stockée packagé.