您好,登錄后才能下訂單哦!
小編給大家分享一下MySQL事務管理的方法有哪些,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
事務處理用來維護數據庫等完整性,保證mysql操作要么成功,要么失敗(myisam不支持事務)
事務(transaction)指一組SQL語句;
回退(rollback)指撤銷指定SQL語句的過程;
提交(commit)指將未存儲的SQL語句結果寫入數據庫表;
保留點(savepoint)指事務處理中設置的臨時占位符(place-holder),你可以對它發布回退(與回退整個事務處理不同)。
select * from orderitems; START TRANSACTION; DELETE FROM orderitems; select * from orderitems; ROLLBACK; select * from orderitems;
START TRANSACTION; DELETE FROM orderitems where order_num = 20010; DELETE FROM orders WHERE order_num = 20010; COMMIT
假設第二條刪除失敗,回滾,撤銷事務處理塊內的語句
復雜的事務處理可能需要部分提交或回退。
為了支持回退部分事務處理,必須能在事務處理塊中合適的位置放 置占位符。這樣,如果需要回退,可以回退到某個占位符。
這些占位符稱為保留點。為了創建占位符,可如下使用SAVEPOINT
創建保留點
SAVEPOINT delete1
回退到保留點
ROLLBACK TO delete1
保留點越多越好,方便靈活使用,but沒必要到就算來哈!凡事適可而止
釋放保留點
保留點在事務處理完成(執行一條ROLLBACK或 COMMIT)后自動釋放
release savepoint delete1
明確釋放保留點
mysql是自動提交所有更改。
不自動提交更改
set autocommit = 0;
看完了這篇文章,相信你對MySQL事務管理的方法有哪些有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。