1、事務的概念
在多個操作的sql語句當中,要麼同時成功執行,要麼同時失敗執行。
2、操作步驟:
a.開啟事務 start transaction
b.回滾(出問題了,需要回到開啟事務之前) rollback
c.提交(正常執行,將改變的資料提交結束事務) commit
3、檢視和修改事務的提交方式
a.檢視事務的提交方式
select @@autocommit;
b.修改事務的提交方式
set @@autocommit = 0; -- 0表示手動提交,1表示自動提交
4、事務的四大特徵
a.原子性: 在事務的多個sql語句當中,不可以分割開來
b.永續性: 發生回滾和提交的時候,資料持久的儲存在硬碟上面
c.隔離性: 盡可能的多個事務之間沒有影響
d.一致性: 事務前後的總量不能改變
5、隔離級別
a.存在問題
a.髒讀:事務x讀取到事務y,未提交的資料.
b.虛讀(不可重複讀):在同乙個事務當中,兩次讀取的資料不一樣。
c.幻讀:事務x在運算元據庫當中所有的記錄,事務y在新增一條新的 記錄。事務x讀取不到自己的修改
b.對應的級別
a. read uncommited 讀未提交 (出現"髒讀","虛讀","幻讀")
b. read commited 讀提交 (出現"虛讀","幻讀") ---> oracle 預設採用
c. repeatable read 可重複讀 (出現"幻讀") ---> mysql 預設採用
d. serializable 序列化 (可以解決所有問題,效率低)
c.設定和檢視隔離級別
a.檢視隔離級別 select @@tx_isolation;
b.設定隔 set global transaction isolation level 級別字串;
PHP使用Mysql事務例項解析
資料庫連線 conn mysql connect localhost root mysql select db test conn mysql query set names gbk 支援事務的表必須是innodb型別 一段事務中只能出現一次 mysql query start transactio...
mysql 事務 數量 Mysql 事務
什麼是事務 不可分割的操作,比如乙個事務要修改 a 表和刪除 b 表的資料兩個操作,這兩個操作都成功,這個事務才 commit,不然 rollback 每條 sql 語句都是乙個事務 只對 dml 生效 caid 一致性 consistency 讓資料保持一定程度的合理性,比如使用者加入購物車,購物...
mysql事務機制 Mysql事務機制
mysql事務是指將資料庫從一種一致性狀態轉到另一種一致性狀態 mysql事務具有acid特性 原子性 atomicity 事務中的所有操作,要麼全部執行,要麼都不執行 一致性 consistency 事務開始和結束後,資料庫的完整性不會被破壞 隔離性 isolation 事務之間互不影響。事務的隔...