2013-04-17 82 views
1

我使用笨,我使用像後交易錯誤也

$this->db->trans_start(); 
some 5 mysql inserts and 
$this->db->trans_complete(); 

我收到錯誤,如DB Transaction Failure 5日查詢即一些重複輸入錯誤代碼數據得到保存。但仍然我所有的前四個查詢都被執行。它不應該回滾?

回答

0

使用"Strict Mode"爲您的交易。如果其中一個查詢失敗,會自動回滾其他查詢。點擊here查看詳情。希望它能幫助你。

0

,你可以手動運行交易如下:

$this->db->trans_begin(); 

$this->db->query('AN SQL QUERY...'); 
$this->db->query('ANOTHER QUERY...'); 
$this->db->query('AND YET ANOTHER QUERY...'); 

if ($this->db->trans_status() === FALSE) 
{ 
    $this->db->trans_rollback(); 
} 
else 
{ 
    $this->db->trans_commit(); 
}