就是将一组SQL语句放在同一批次内去执行,如果一个SQL语句出错,则该批次内的所
有sql语句都将被取消执行 事务的四大特性
事务的四大特性 原子性(Atomic):事务执行,即不可再分,要么不执行
一致性(Consist):事务开始之前和事务结束后,数据库的完整性约束没有被破环
隔离性(Isolated):事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间
某一时刻的数据
持久性(Durable):事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库
中,并不会被回滚
脏读读取了未提交的新事物,然后被回滚了
事务A读取了事务B尚未提交的数据,如果事务B回滚,则A读取使用了错误的数据
解决 事务在读的时候,禁止读取未提交的事务
幻读在事务A多次读取构成中,事务B对数据惊醒了新增 *** 作,导致事务A多次读取的数据不一致
不可重复读事务B读取两次数据资源,子啊这两次的过程中事务A修改了数据,导致事务B在两次的读取
出来的数据不一致。
事务的隔离级别为了解决以上问题,关系型数据库提供给四种事务的隔离级别:读未提交,读已提交,可重复读,串行化,级别越高越能保证数据的完整性和一致性,但执行效率也越低
读未提交所有的事务都可以看到其他未提交的事务的执行结果,不能解决脏读,幻读,可重复读
读已提交一个事务的更新 *** 作结果只有在该事务提交之后,另一个事务才可能读到同一数据的更
新后的结果 ,可以防止脏读。
可重复读一个事务多尺度同一个数据,在这个事务还没结束时,其他事务不能访问该数据,这样
就可以在同一事物内两次读到的数据是一样的 ,可以防止脏读和不可重复读。
串行化事务只能一个接着一个地执行,不能并发执行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)