时间:2021-07-01 10:21:17 帮助过:24人阅读
二、事务使用
- start <span style="color: #0000ff">transaction</span>; <span style="color: #008080">--</span><span style="color: #008080"> 开启事务</span>
- <span style="color: #008080">--</span><span style="color: #008080"> SQL语句1...</span>
- <span style="color: #000000">
- savepoint sp1; </span><span style="color: #008080">--</span><span style="color: #008080"> 设置回滚点</span>
- <span style="color: #008080">--</span><span style="color: #008080"> SQL语句2...</span>
- <span style="color: #008080">--</span><span style="color: #008080"> 如果操作失败 可以用rollback退回到回滚点</span>
- <span style="color: #0000ff">rollback to </span><span style="color: #000000">sp1;
- </span><span style="color: #008080">--</span><span style="color: #008080"> SQL语句3...</span>
- <span style="color: #008080">--</span><span style="color: #008080"> 操作完成后,用commit提交事务</span>
- <span style="color: #0000ff">commit</span>;
三、自动事务提交
事务是否自动提交由系统变量autocommit来控制,1为开启,0为关闭。默认是开启状态。
- <span style="color: #008080">--</span><span style="color: #008080"> 设置自动事务提交</span>
- <span style="color: #0000ff">set</span> autocommit :<span style="color: #808080">=</span> <span style="color: #800000; font-weight: bold">0</span>; <span style="color: #339966">-- mysql中 = 一般用于比较, := 才是赋值</span>
四、事务的特性--ACID
A: atomic, 原子性, 整个事务的操作是一个整体,不可分割,要么全部成功,要么全部失败。
C: consistency, 一致性,事务操作前后,数据表中的数据没有变化。
I: isolation, 隔离性, 不同的事务操作是相互隔离,不受影响的。
D: durability, 持久性, 数据一旦提交, 就不会再改变。
锁机制:innodb默认是行锁, 但当事务操作的过程中,没有使用到索引,那么就会自动升级为表锁,全表检索数据。
mysql中的事务
标签:... 索引 改变 连续 art 修改表 机制 使用 注意