gpt4 book ai didi

mysql 使用 signal/resignal 进行错误处理

转载 作者:行者123 更新时间:2023-11-29 12:39:39 25 4
gpt4 key购买 nike

我想检查有效的负载类型。如果传递到我的过程中的加载类型无效,我想通过 SIGNAL 抛出错误消息。我还希望有一个通用的 EXIT 处理程序来处理任何其他意外错误,这将回滚任何更改。问题是通用 EXIT 处理程序优先于我的自定义信号,而我得到的只是“遇到 SQLException”。除非我删除通用 EXIT 处理程序,在这种情况下我会得到“加载类型不正确”。

code:

DECLARE incorrect_load_type CONDITION FOR SQLSTATE '22012';

DECLARE EXIT HANDLER FOR incorrect_load_type
RESIGNAL SET MESSAGE_TEXT = 'Load type is incorrect';

DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING
begin
SELECT 'SQLException encountered';
rollback;
end;

IF(v_load_type != 'CORRECT TYPE') THEN
SIGNAL incorrect_load_type;
END IF;

最佳答案

试试这个

DECLARE incorrect_load_type CONDITION FOR SQLSTATE '22012';

DECLARE EXIT HANDLER FOR incorrect_load_type
begin
SELECT 'Load type is incorrect';

end;

DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING
begin
SELECT 'SQLException encountered';
rollback;
end;

IF (v_load_type != 'CORRECT TYPE') THEN
SIGNAL incorrect_load_type;
END IF;

关于mysql 使用 signal/resignal 进行错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26302162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com