执行mysql存储过程;
怎样像o/m数据库抓取出报错信息输出到log表呢?
mssql可以直接引用ERROR_MESSAGE()
查资料只能到查到有错误时赋值变量,应该至少可以抓到个error code啊
DECLARE t_error INT DEFAULT 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error = 1;
大家看看怎么实现
执行mysql存储过程;
怎样像o/m数据库抓取出报错信息输出到log表呢?
mssql可以直接引用ERROR_MESSAGE()
查资料只能到查到有错误时赋值变量,应该至少可以抓到个error code啊
DECLARE t_error INT DEFAULT 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error = 1;
大家看看怎么实现
弄了一下午终于搞定;
不得不说mysql
的流程控制好差劲!
错误发生时经常抓取不到error
,code
直接赋值null
,这样判断事物提交时被坑了一把;
文档里的抓取数据影响行数的功能没测通,输出结果始终是0
,可能用法也不对吧,没找到正确姿势.
另外推荐个mysql
存储过程调试工具 dbForge Studio for MySQL
使用时记得只在测试库上debug
,因为它会给存储过程加代码,在数据库中新建存储调试信息的库.
4 回答1.5k 阅读✓ 已解决
8 回答1.3k 阅读
3 回答1k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
3 回答1.9k 阅读
2 回答1.7k 阅读
1 回答910 阅读✓ 已解决
declare exit handler for sqlexception
/开始事物/
start transaction;