MySQL----如何创建事务

tech2025-10-15  2

#事务的创建 /* 隐式的事务:事务没有明显的开启和结束的标记 比如insert、update、delete语句 delete from 表 where id=1; 显示事务:事物具有明显的开启和结束的标记 前提:必须先设置自动提交功能为禁用 set autocommit=0; 步骤1:开启事务 set autocommit=0; start transaction;可选的 步骤2:编写事务中的sql语句(select、insert、update、delete) 语句1; 语句2; ...... 步骤3:结束事务 commit;提交事务 rollback;回滚事务 开启事务的语句 update 表 set 张三丰的余额=500 where name='张三丰'; update 表 set 郭襄的余额=1500 where name='郭襄'; 结束事务的语句; */ SHOW VARIABLES LIKE 'autocommit'; DROP TABLE IF EXISTS account; CREATE TABLE account( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(20), balance DOUBLE ); INSERT INTO account(username,balance) VALUES('张无忌',1000),('赵敏',1000); #演示事务的使用步骤 #开启事务 SET autocommit=0; START TRANSACTION; #编写一组事务的语句 UPDATE account SET balance=500 WHERE username='张无忌'; UPDATE account SET balance=1500 WHERE username='赵敏'; #结束事务 COMMIT; SELECT * FROM account; #试一下回滚的 #开启事务 SET autocommit=0; START TRANSACTION; #编写一组事务的语句 UPDATE account SET balance=1000 WHERE username='张无忌'; UPDATE account SET balance=1000 WHERE username='赵敏'; #结束事务 ROLLBACK; #在没有明确的结束标志,只是滞留在内存了。

回滚:可以返回上次的回滚点。

最新回复(0)