千锋教育2023新版javaweb速成全套教程,零基础入门到企业项目实战
2023-07-17 20:06 作者:cfy111_111yfc | 我要投稿

数据库事务特性(ACID):
原子性(Atomicity):一个事务中的多个DML操作,要么同时执行成功,要么同时执行失败
一致性(Consistency):事务执行之前和事务执行之后,数据库中数据是一致的,完整性和一致性不能被破坏
隔离性(Isolation):数据库允许多个事务同时执行,多个并行的事务之间不能相互影响
持久性(Durability):事务完成后,对数据库操作是永久的
事务的隔离级别:
读未提交:
提供了事务建最小限度的隔离。顾名思义,就是一个事务可以读取另一个未提交事务的数据。
注意:处于该隔离级别的事务A与B,如果事务A使用事务B不提交的变化作为计算的基础然后哪些未提交的变化被事务A撤销,这就导致了大量的数据错误变化。
读已提交:
处于Read committed(读已提交)级别的事务可以看到其他事务对数据的修改。也就是说,在事务处理期间,如果其他事务修改了相应的表,那么同一个事务的同一sql在其他事务执行前后返回的是不同的结果。一个事务要等另一个事务提交后才能读取数据。
可重复读:
在开始读取数据(事务开启)时,不再允许修改操作
串行化
数据库事务的最高隔离级别。在此级别下,事务串行执行。可以避免脏读、不可重复读、幻读等读现象。但是
效率低下,耗费数据库性能,不推荐使用。