【发布时间】:2017-11-27 15:27:40
【问题描述】:
以下事务运行没有问题。但是,一旦事务失败,例如列号不匹配,或任何其他原因,它只会显示错误消息“'SQLWARNING: The request at Linux system time ${LINUX_SYSTEM_TIME} insert failed.th data will回滚'”但没有错误消息显示实际失败。我可以知道是否有任何 MySQL 方法可以在 MySQL 事务中显示错误消息?谢谢。
delimiter //
CREATE PROCEDURE 123
BEGIN
DECLARE EXIT HANDLER FOR SQLWARNING
BEGIN
ROLLBACK;
SELECT 'SQLWARNING: The request at Linux system time ${LINUX_SYSTEM_TIME} insert failed. Th data will be rollbacked';
END;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
SELECT 'The request at Linux system time ${LINUX_SYSTEM_TIME} insert failed. Th data will be rollbacked';
END;
START TRANSACTION;
<do whatever we need in transaction>
COMMIT;
END //
CALL 123;
DROP PROCEDURE IF EXISTS
【问题讨论】:
-
我想你在找
resignal -
@Solarflare:是的,resignal 正是我所需要的。真的很感激!
标签: mysql error-handling transactions