MySQL 事务操作

来源:互联网 发布:如何做淘宝优惠券推广 编辑:程序博客网 时间:2024/05/16 14:31

事务
什么是事务:事务就是把一批SQL指令作为一个批次,要么一起执行 所有SQL指令,只要其中一个SQL指令出现问题,则所有SQL指令都不执行:例如银行转账。
在MySQL中,每一个SQL语句都是一个独立的事务,前一条指令与后一条指令没有任何关系。
事务四大特性 :ACID
(1)原子性:事务是一个不可分隔的基本单元,里面的SQL指令是一个整体,要就一起执行,否则就都不执行。
(2)一致性:事务执行前后,表中的数据要保持一致。
(3)隔离性:事务相互独立,互不干涉。
(4)持久性:事务提交后对表中数据的影响是永久性的
事务类型
(1)隐式事务
(2)自动提交(默认)
(3)显示事务(用户自定义,需要显示的开始及显示的提交或回滚):我们所做的事务类型属于显示事务
操作:1、关闭自动提交 set autocommit = 0;
2、开始事务,设置事务的回滚点 start transaction;
3、操作SQL指令
4、提交(commit)或者回滚(rollback)
5、开启自动提交事务 set autocommit = 1;

set  autocommit = 0; -- 把自动提交关闭START TRANSACTION; -- 开始事务-- 执行SQL语句-- 例如:UPDATE card set money = money + 10000 where id= 2;UPDATE card set money = money - 10000 WHERE id= 1;-- 提交 COMMIT;ROLLBACK; -- 回滚set autocommit = 1; -- 开启事务
原创粉丝点击