RAISE (Script Snowflake)

Gera uma exceção.

Para obter mais informações sobre exceções, consulte Tratamento de exceções.

Nota

Este constructo do Script Snowflake só é válido dentro de um bloco do Script Snowflake.

Consulte também:

EXCEPTION

Sintaxe

RAISE <exception_name> ;
Copy

Onde:

exception_name

O nome da exceção a ser gerada.

Se você estiver lidando com uma exceção em um manipulador de exceção e quiser gerar a mesma exceção novamente, omita este argumento. Consulte Gerar novamente a mesma exceção em um manipulador de exceções.

Exemplos

Isso gera (mas não captura) uma simples exceção:

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

Aqui está a chamada para o procedimento armazenado que gera a exceção:

CALL thrower();
Copy

Aqui está o resultado da execução do procedimento armazenado que gera a exceção:

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

O próximo exemplo é semelhante ao exemplo anterior, mas utiliza uma exceção para a qual o usuário definiu um número de exceção e uma mensagem de exceção personalizados:

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

Aqui está o resultado da execução do procedimento armazenado que gera a exceção:

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

Para obter mais exemplos, consulte os exemplos de como lidar com uma exceção.