RAISE (Exécution de scripts Snowflake)

Lève une exception.

Pour plus d’informations sur les exceptions, voir Traitement des exceptions.

Note

Cette construction Exécution de scripts Snowflake n’est valable qu’à l’intérieur d’un bloc Exécution de scripts Snowflake.

Voir aussi

EXCEPTION

Syntaxe

RAISE <exception_name> ;
Copy

Où :

exception_name

Le nom de l’exception à lever.

Si vous traitez une exception dans un gestionnaire d’exception et que vous souhaitez soulever à nouveau la même exception, omettez cet argument. Voir Levée de la même exception à nouveau dans un gestionnaire d’exceptions.

Exemples

Cette opération crée et soulève (mais n’intercepte pas) une exception simple :

CREATE PROCEDURE thrower()
RETURNS VARCHAR
LANGUAGE SQL
AS
$$
    DECLARE
        MY_EXCEPTION EXCEPTION;
    BEGIN
        RAISE MY_EXCEPTION;
    END;
$$
;
Copy

Voici l’appel à la procédure stockée qui soulève l’exception :

CALL thrower();
Copy

Voici le résultat de l’exécution de la procédure stockée qui soulève l’exception :

-20000 (P0001): Uncaught exception of type 'MY_EXCEPTION' on line 5 at position 8
Copy

L’exemple suivant est similaire à l’exemple précédent, mais utilise une exception pour laquelle l’utilisateur a défini un numéro d’exception et un message d’exception personnalisés :

    DECLARE
        MY_EXCEPTION EXCEPTION (-20002, 'Raised MY_EXCEPTION.');
Copy

Voici le résultat de l’exécution de la procédure stockée qui soulève l’exception :

-20002 (P0001): Uncaught exception of type 'MY_EXCEPTION' on line 7 at position 8 : Raised MY_EXCEPTION.
Copy

Pour plus d’exemples, voir les exemples de gestion d’une exception.