2013-04-17 83 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(); 
}