RAISE (Snowflake Scripting)¶
引发异常。
有关异常的详细信息,请参阅 处理异常。
备注
本 Snowflake Scripting 结构仅在 Snowflake Scripting 区块 内有效。
- 另请参阅:
语法¶
RAISE <exception_name> ;
其中:
exception_name
要引发的异常的名称。
如果要在异常处理程序中处理异常,并且想要再次引发相同的异常,请忽略此实参。请参阅 在异常处理程序中再次引发相同的异常。
示例¶
这将创建并引发(但不会捕获)一个简单的异常:
CREATE PROCEDURE thrower()
RETURNS VARCHAR
LANGUAGE SQL
AS
$$
DECLARE
MY_EXCEPTION EXCEPTION;
BEGIN
RAISE MY_EXCEPTION;
END;
$$
;
下面是对引发异常的存储过程的调用:
CALL thrower();
下面是执行引发异常的存储过程的输出:
-20000 (P0001): Uncaught exception of type 'MY_EXCEPTION' on line 5 at position 8
下一个示例与前面的示例类似,但使用用户为其定义自定义异常编号和异常消息的异常:
DECLARE
MY_EXCEPTION EXCEPTION (-20002, 'Raised MY_EXCEPTION.');
下面是执行引发异常的存储过程的输出:
-20002 (P0001): Uncaught exception of type 'MY_EXCEPTION' on line 7 at position 8 : Raised MY_EXCEPTION.
有关更多示例,请参阅 处理异常 的示例。