Propagation—required 如果当前没有事物就创建一个事物,如果当前有事物就加入该事物
Propagation——supports 支持当前事物,如果当前存在事物就加入该事物,否则就以非事物的方式执行
Propagation——mandatory 支持当前事物,如果当前存在事物就加入该事物,否则就抛出异常
Propagation——requires-new 无论当前有没有事物,都重新创建一个新事物
Propagation——not-supported 如果当前有事物就挂起是否,否则以非实物的方式执行
Propagation——never 如果当前存在事物 就抛出异常,否则就以非事物的方式执行
Propagation——nested 如果当前存在事物,则在嵌套事物内执行,如果当前没有事物,就创建一个新事物
首先是事物的四大特性 ACID 原子性,一致性,隔离性,持久性
对于隔离容易发生三种情况分别为
脏读(一个事物读到另一个事物未提交的修改);
不可重复读(在同一个事物中两次读取的事物的信息不一致);
幻读(事物1第一次读取了3行数据,这时候事物2插入了一条新的数据,事物1再次查询发现有4行,这一行的出现感觉不可思议)
Read Uncommitted 读未提交
read committed 读已提交
Repeatable read (可重读)
Serializable 可串行化
查询隔离级别
select @@tx_isolation;
设置隔离级别
set session transaction isolation level 隔离级别