FirebirdSQL logo

CURRENT_USER

Disponible en

DSQL, PSQL

Syntaxe
CURRENT_USER
type de résultat de retour

VARCHAR(63)

La variable CURRENT_USER contient le nom de l’utilisateur de la base de données actuellement connecté.

Example 1. Utilisation d’une variable CURRENT_USER
NEW.ADDED_BY = CURRENT_USER;

DELETING

Disponible en

PSQL

Syntaxe
DELETING
type de résultat de retour

BOOLEAN

La variable contextuelle DELETING est uniquement disponible dans le code des triggers de table. Elle est utilisée dans les triggers pour plusieurs types d’événements et indique que le trigger a été déclenché lorsque l’opération DELETE est exécutée.

Example 1. Utilisation d’une variable DELETING
...
IF (DELETING) THEN
BEGIN
  INSERT INTO REMOVED_CARS (
    ID, MAKE, MODEL, REMOVED)
  VALUES (
    OLD.ID, OLD.MAKE, OLD.MODEL, CURRENT_TIMESTAMP);
END
...

docnext count = 1

GDSCODE

Disponible en

PSQL

Syntaxe
GDSCODE
type de résultat de retour

INTEGER

Dans le bloc de gestion des erreurs WHEN …​ DO la variable contextuelle GDSCODE contient une représentation numérique du code d’erreur actuel de Firebird.Avant Firebird 2.0, GDSCODE ne pouvait être récupéré qu’en utilisant la construction WHEN GDSCODE.Maintenant, cette variable contextuelle peut aussi être utilisée dans les blocs WHEN ANY, WHEN SQLCODE et WHEN EXCEPTION, tant que le code d’erreur correspond au code d’erreur de Firebird.En dehors du gestionnaire d’erreur, GDSCODE est toujours 0.En dehors de PSQL, GDSCODE n’existe pas du tout.

Example 1. Utilisation d’une variable GDSCODE
...
WHEN GDSCODE GRANT_OBJ_NOTFOUND,
     GDSCODE GRANT_FLD_NOTFOUND,
     GDSCODE GRANT_NOPRIV,
     GDSCODE GRANT_NOPRIV_ON_BASE
DO
BEGIN
  EXECUTE PROCEDURE LOG_GRANT_ERROR(GDSCODE);
  EXIT;
END
...
Note

Attention : après, WHEN GDSCODE vous devez utiliser des noms symboliques — comme grant_obj_notfound etc. Mais la variable de contexte GDSCODE est un entier. Vous devez utiliser une valeur numérique pour la comparer à une erreur particulière, comme 335544551 pour grant_obj_notfound.