auto commit

This commit is contained in:
CyC2018
2019-11-02 12:07:41 +08:00
parent 182e1440a4
commit bb6e0df82d
784 changed files with 7545 additions and 2827 deletions

View File

@ -147,8 +147,8 @@ MySQL 中提供了两种封锁粒度:行级锁以及表级锁。
| - | X | S |
| :--: | :--: | :--: |
| **X** |×|×|
| **S** |×||
| **X** |×|×|
| **S** |×||
### 2. 意向锁
@ -167,10 +167,10 @@ MySQL 中提供了两种封锁粒度:行级锁以及表级锁。
| - | X | IX | S | IS |
| :--: | :--: | :--: | :--: | :--: |
| **X** |× |× |× | ×|
| **IX** |× | |× | |
| **S** |× |× | | |
| **IS** |× | | | |
| **X** |× |× |× | ×|
| **IX** |× | |× | |
| **S** |× |× | | |
| **IS** |× | | | |
解释如下
@ -181,7 +181,7 @@ MySQL 中提供了两种封锁粒度:行级锁以及表级锁。
### 1. 三级封锁协议
**一级封锁协议**
**一级封锁协议**
事务 T 要修改数据 A 时必须加 X 直到 T 结束才释放锁
@ -202,7 +202,7 @@ MySQL 中提供了两种封锁粒度:行级锁以及表级锁。
| | commit |
| | unlock-x(A)|
**二级封锁协议**
**二级封锁协议**
在一级的基础上要求读取数据 A 时必须加 S 读取完马上释放 S
@ -223,7 +223,7 @@ MySQL 中提供了两种封锁粒度:行级锁以及表级锁。
| | unlock-s(A)|
| | commit |
**三级封锁协议**
**三级封锁协议**
在二级的基础上要求读取数据 A 时必须加 S 直到事务结束了才能释放 S
@ -448,7 +448,7 @@ SELECT c FROM t WHERE c BETWEEN 10 and 20 FOR UPDATE;
可以通过分解来满足
<font size=4> **分解前** </font><br>
<font size=4> **分解前** </font><br>
| Sno | Sname | Sdept | Mname | Cname | Grade |
| :---: | :---: | :---: | :---: | :---: |:---:|
@ -467,7 +467,7 @@ Grade 完全函数依赖于键码,它没有任何冗余数据,每个学生
Sname, Sdept Mname 都部分依赖于键码当一个学生选修了多门课时这些数据就会出现多次造成大量冗余数据
<font size=4> **分解后** </font><br>
<font size=4> **分解后** </font><br>
关系-1