检查 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 的更多信息,请参阅文档。