您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關PDO事務功能有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
定義:PDO
事務功能,并非PDO
額外多出了一項功能,而是將原來MySQL
所支持的事務操作進行了一定的封裝實現(xiàn)。注意:事務執(zhí)行是否成功是由MySQL
對應的存儲引擎是否支持決定的。
1.事務功能回顧:事務是指改變默認的一次操作一次寫入數(shù)據(jù)表的機制,而是通過事務日志記錄操作,在最后通過一次性操作寫入到數(shù)據(jù)表。
開啟事務:start transaction
,寫操作停止直接寫入數(shù)據(jù)表,而是記錄到事務日志
事務操作:具體的寫操作,通常多個步驟多條指令
提交事務:即事務操作結束
成功提交:commit
,所有事務日志內容同步到數(shù)據(jù)表,并清空當前事務日志
失敗回滾:rollback
,直接清空當前事務日志
2.PDO類中提供一套方案來實現(xiàn)事務操作
<?php $pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root'); $pdo->beginTransaction() or die('事務開啟失敗');//開啟事務 $pdo->exec('insert into student values()');//執(zhí)行事務 //終止事務 $pdo->commit(); //成功提交 $pdo->rollback(); //失敗回滾
3.在事務操作中,有一種回滾點
機制,在PDO
中沒有實現(xiàn),如果有必要,可以通過SQL指令
設置來實現(xiàn)
<?php $pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root'); $pdo->beginTransaction() or die('事務開啟失敗');//開啟事務 $pdo->exec('insert into student values()');//執(zhí)行事務 //設置回滾點 $pdo->exec('savepoint sp1'); //繼續(xù)執(zhí)行事務... //回滾 $pdo->exec('rollback to sp1'); //終止事務 $pdo->commit(); //成功提交 $pdo->rollback(); //失敗回滾 ?>
感謝各位的閱讀!關于“PDO事務功能有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。