FirebirdSQL logo

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.

docnext count = 24

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$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$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$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$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 colonneRDB$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é.

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.