MySQL事务可以通过以下几种方式来实现:
示例:
BEGIN; -- 开始事务
-- 执行一系列SQL语句
COMMIT; -- 提交事务
-- 或者
ROLLBACK; -- 回滚事务
SET AUTOCOMMIT=0;
语句放在事务开始之前,然后在事务结束时使用COMMIT;
或ROLLBACK;
语句。示例:
SET AUTOCOMMIT=0; -- 关闭自动提交
-- 执行一系列SQL语句
COMMIT; -- 提交事务
-- 或者
ROLLBACK; -- 回滚事务
示例:
DELIMITER //
CREATE PROCEDURE my_transaction()
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK;
START TRANSACTION;
-- 执行一系列SQL语句
COMMIT;
END //
DELIMITER ;
CALL my_transaction(); -- 调用存储过程执行事务
无论使用哪种方式,事务的目的是要保证一系列SQL语句要么全部执行成功并被提交,要么全部回滚。