Snowflake存储过程条件强制错误



如果满足任何条件,我希望该过程失败。

有没有一种方法可以有条件地退出Snowflake存储过程并出错。

可以使用

RAISE

引发异常。

-- Stored Procedure - Snowflake Scripting
CREATE OR REPLACE PROCEDURE test_proc(ARG INT)
RETURNS INT
LANGUAGE SQL
AS
DECLARE
my_exception EXCEPTION (-20002, 'Raised MY_EXCEPTION.');
BEGIN
IF (ARG = 2) THEN
RAISE my_exception;
END IF;

RETURN ARG;        
END;

测试:

CALL test_proc(1);
-- 1
CALL test_proc(2);
-- -20002 (P0001): Uncaught exception of type 'MY_EXCEPTION' on line 5 at position 8:
-- Raised MY_EXCEPTION.

最新更新