数据库事务隔离级别
发布时间: 2025-07-09 00:57:54
㈠ 4种事务特性,5种隔离级别,7种传播行为
4种事务特性: 原子性:事务内部的操作必须作为一个整体执行,要么全部完成,要么全部回滚。 一致性:确保事务执行前后数据的完整性保持一致。 隔离性:在事务执行过程中,其他事务不应干扰到当前事务的执行。 持久性:一旦事务结束,其对数据库的修改将被永久保存。
5种隔离级别: DEFAULT:默认隔离级别,由数据库平台决定。 未提交读:允许其他事务读取未提交的数据,可能导致脏读、不可重复读和虚幻读。 已提交读:避免脏读,但不可重复读和虚幻读仍有可能发生。 可重复读:避免脏读和不可重复读,但虚幻读可能依然存在。 串行化:防止所有读问题,但代价最高。
7种事务传播行为: PROPAGATION_REQUIRED:如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。 PROPAGATION_SUPPORTS:如果当前存在事务,则加入该事务;如果当前没有事务,则以非事务方式执行。 PROPAGATION_MANDATORY:如果当前存在事务,则加入该事务;如果当前没有事务,则抛出异常。 PROPAGATION_REQUIRES_NEW:创建一个新的事务,并暂停当前事务。 PROPAGATION_NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,则将当前事务挂起。 PROPAGATION_NEVER:以非事务方式执行,如果当前存在事务,则抛出异常。 PROPAGATION_NESTED:如果当前存在事务,则在嵌套事务内执行;如果当前没有事务,则行为等同于PROPAGATION_REQUIRED。
热点内容