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:
Sintaxe¶
RAISE <exception_name> ;
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;
$$
;
Aqui está a chamada para o procedimento armazenado que gera a exceção:
CALL thrower();
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
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.');
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.
Para obter mais exemplos, consulte os exemplos de como lidar com uma exceção.