一,事务简介
事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。
默认MySQL的事务是自动提交的,也就是说,当执行一条DML语句,MySQL会 立即隐式的提交事务。
二,事务操作
默认每一条SQL语句都是一个事务。
两种事务操作的方法
1,查看/设置事务提交方式
2,提交事务:
3,回滚事务:
若设置为手动提交后,不执行提交事务的指令,代码如果没有错误的话,只会在当前页面进行编译。指令并没有提交到数据库当中。只是临时指令。
当代码全部运行通过后,再专门执行提交事务代码,若没有全部通过,则执行回滚事务代码。
* 三,事务的四大特性:(ACID)
●原子性(Atomicity) :事务是不可分割的最小操作单元,要么全部成功,要么全部失败。
●一致性(Consistency) :事务完成时,必须使所有的数据都保持一 致状态。
●隔离性(Isolation) :数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。
●持久性(Durability) :事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。
四,并发事务问题
五,事务隔离级别:(解决并发事务问题)
规避了脏读的问题
不可重复读:
隔离级别与数据安全性成正比,与性能成反比。