## 手動事務
手動事務:不管是開始還是過程還是結束都需要用戶(程序員),手動的發送事務操作指令來實現.
#### 手動事務對應的命令:
1. start transaction; //開啟事務:從這條語句開始,后面的所有語句都不會直接寫入到數據表(保存在事務日志中).
2. 事務處理:多個寫指令構成.
3. 事務提交:commit/rollback,到這個時候所有的事務才算結束.
#### 開啟事務
語法 :
~~~
start transaction;
~~~
#### 執行事務
將多個連續的但是是一個整體的SQL指令,逐一執行. 正常操作SQL指令即可.
#### 提交事務
* 確認提交:commit,數據寫到數據表(清空).
~~~
commit;
~~~
* 回滾操作:rollback,所有數據無效并清空.
~~~
rollback;
~~~
#### 回滾點
savepoint,當有一系列事務操作時,而其中的步驟如果成功了,沒有必要重新來過,可以在某個點(成功),設置一個記號(回滾點),然后如果后面有失敗,那么可以回到這個記號位置。
1. 增加回滾點 : savepoint 回滾點名字; (字母數字和下劃線構成).
~~~
savepoint 回滾點名稱;
~~~
2. 回到回滾點:rollback to 回滾點名字; (那個記號(回滾點)之后的所有操作沒有了).
~~~
rollback to 回滾點名稱;
~~~
3. 注意:在一個事務處理中,如果有很多個步驟,那么可以設置多個回滾點。但是如果回到了前面的回滾點,后面的回滾點就失效;
- 數據庫介紹
- 數據庫基本概念
- SQL介紹
- MySQL服務端架構
- 庫操作
- 表操作
- 字段類型
- 整數類型
- 小數類型
- 字符串類型
- 日期/時間類型
- json類型
- 字段屬性
- Null
- 默認值
- 列描述
- 主鍵
- 自動增長
- 唯一鍵
- 數據庫基礎操作
- 增
- 刪
- 改
- 查
- 運算符
- 算術運算符
- 比較運算符
- 邏輯運算符
- in運算符
- is運算符
- like運算符
- 高級查詢
- 聯合查詢
- 連接查詢
- 交叉連接
- 內連接
- 外連接
- Using關鍵字
- 子查詢
- 標量子查詢
- 列子查詢
- 行子查詢
- 表子查詢
- exists子查詢
- 子查詢特定關鍵字
- 用戶權限管理
- 用戶管理
- 權限管理
- 外鍵
- 外鍵操作
- 外鍵基本要求
- 約束
- 視圖
- 事務安全
- 自動事務
- 手動事務
- 事務特點
- 變量
- 系統變量
- 會話變量
- 局部變量
- 流程結構
- if分支
- while循環
- 函數
- 內置函數
- 字符串函數
- 時間函數
- 數學函數
- 其他函數
- 存儲過程
- 與函數的區別
- 存儲過程操作
- 存儲過程的形參類型
- 觸發器
- 觸發器概念
- 觸發器操作