检查 MySQL 交易中的错误
To check for error in a MySQL transaction
我想在MySQL进行交易。如果出现任何错误,我希望回滚,否则我想提交。这些操作有代码吗?
您可以使用 Declare/Handler 语法来跟踪异常,然后根据值提交或回滚。这里有一个例子:
DELIMITER //
BEGIN
DECLARE `fail` bool default 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET `fail` = 1;
START TRANSACTION;
INSERT ..
UPDATE ..
W/E...
IF `fail` THEN
ROLLBACK;
ELSE
COMMIT;
END IF;
END//
DELIMITER;
有关 DECLARE..HANDLER 的更多信息,请参阅文档。
我想在MySQL进行交易。如果出现任何错误,我希望回滚,否则我想提交。这些操作有代码吗?
您可以使用 Declare/Handler 语法来跟踪异常,然后根据值提交或回滚。这里有一个例子:
DELIMITER //
BEGIN
DECLARE `fail` bool default 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET `fail` = 1;
START TRANSACTION;
INSERT ..
UPDATE ..
W/E...
IF `fail` THEN
ROLLBACK;
ELSE
COMMIT;
END IF;
END//
DELIMITER;
有关 DECLARE..HANDLER 的更多信息,请参阅文档。