【发布时间】:2012-12-31 11:32:48
【问题描述】:
错误处理程序可以在过程之外声明吗?
DECLARE EXIT HANDLER FOR NOT FOUND ROLLBACK;
DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK;
DECLARE EXIT HANDLER FOR SQLWARNING ROLLBACK;
START TRANSACTION;
INSERT INTO ad_type VALUES (3, 'test');
INSERT INTO ad_type_languages VALUES (3, 'TEST', 'en' , 'yes');
COMMIT;
当我尝试执行此代码时出现错误:
ERROR 1064 (42000) at line 1:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的“DECLARE EXIT HANDLER FOR NOT FOUND ROLLBACK”附近使用正确的语法
当我在程序中执行它时它运行正常,但我需要在没有存储过程的脚本中使用它。
提前致谢。
附言
这三个句柄会捕获所有错误吗?
【问题讨论】: