2012-11-15 53 views
0

說我有一堆查詢,我正在使用PHP/MySQL PDO連續順序運行。所以理想情況下,我從BeginTransaction開始,然後通過提交完成。MySQL PDO事務例外

現在,假設其中一個查詢在提交之前在運行的中間引發了異常。當我發現異常來處理它時,我必須回滾嗎?或者只是忽略假設它會自動回滾,因爲沒有提交調用?

謝謝。

+0

查詢不包含任何創建表。這些查詢只是刪除和更新表中的entires。 – Greeso

回答

0

如果您想確定,您可以嘗試調用catch塊中的回滾函數。 http://www.php.net/manual/en/pdo.rollback.php

+0

根據文檔(http://www.php.net/manual/en/pdo.begintransaction.php),當您調用beginTransaction時,autocommit被關閉,所以如果代碼在調用commit之前結束,它將不會執行查詢。 –