My Sql的事务处理(只用于增删改)
事务就是将一组SQL语句放在同一批次去执行
如果一个SQL语句出错,则该批次内的所有SQL都将被取消执行
事务必须具备以下四个属性 简称ACID属性
原子性(Atomicity):事务的两个方面不可分割 要么成功要么失败,不存在单方面成功的情况
一致性(Consistency):数据的一致性(10元钱换10元菜,转出去多少钱,对方就收到多少钱)
隔离性(Isolation):两件事无关,彼此独立
持久性(Durability)事务一旦完成,不可更改
MySQL的事务实现方法
– 1关闭自动提交
set autocommit=0
– 2开启事务
start TRANSACTION;
– 3执行sql语句(从账户扣除500元)
update account set account.cash=account.cash-500 where name
=‘a’
select * from account
– 4提交或回滚
rollback;
commit;(提交后原表格数据才会彻底改变 rollback不再起作用)
– 5恢复自动提交
set autocommit=1(自动提交设置后,不需要再每次提交)