gpt4 book ai didi

mysql - 从存储过程处理程序中访问错误堆栈

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

我有一个调用另一个存储过程的存储过程。我们称它们为“外部”和“内部”。

INNER 过程可以检测输入中的错误,如果出现错误,它将像这样引发/发出信号

signal sqlstate '45000' set message_text = 'some error';

在 OUTER 过程中,我可以使用像这样的普通处理程序来捕获它

declare exit handler for sqlstate '45000'
begin
-- this is where I'd like to access the message_text from INNER
end

但我无法找到读取信号内部部分的方法。

我已经看到它可能在 5.6 中可用,但这还不是 GA,并且在发布后可能会不稳定一段时间。

有人对此感兴趣吗?

最佳答案

当引发 SQL 条件(警告、错误)并在异常处理程序中捕获时,了解所发生情况的详细信息的唯一方法是使用 GET DIAGNOSTICS 语句。

查看文档: http://dev.mysql.com/doc/refman/5.6/en/get-diagnostics.html

该声明确实仅从 5.6 开始可用。

对于 5.5 及更早版本,无法访问(即从异常处理程序中的代码)访问您正在查找的数据。

关于mysql - 从存储过程处理程序中访问错误堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9721065/

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