TCL
事务四大特性ACID(只有DML才有事务机制)
- A:原子性:事务是最小的工作单元不可再分
- C:一致性:多条DML语句同时成功或失败
- I:隔离性:不同事务之间隔离
- 更新未提交:两个事务对同一数据更新操作,提交后,存在==丢失更新==现象
- 读未提交(read uncommitted):另一个事务未提交,当前事务可以读另一个未提交数据,存在==脏读(dirty read)==现象
- 读已提交(read committed):另一个事务提交后,当前事务就能读到,存在==不可重复读()==
- 可重复读(repeatable read):存在==幻影读==
- 序列化读(serializable):事务排队执行,效率低
- D:持久性:数据持久化到硬盘文件,事务结束
MySQL中的事务
事务的开启
start transaction;
begin transaction;
...
savepoint name;
...
rollback [name]| commit;
设置事务隔离级别
set global transaction isolation level [];
select @@global.tx_isolation;
Comments NOTHING