codeIgniter 中的事务如何工作?我可以停止一次交易并开始另一个交易吗?
看我的例子
$this->db->trans_begin();
$a = 'UPDATE ......'; RETURN TRUE
$b = 'INSERT INTO......'; RETURN FALSE
$this->db->trans_rollback(); // I tried $this->db->trans_off();
var_dump( $this->db->trans_status() );
$this->db->trans_begin();
if ( $this->db->trans_status() === FALSE ) {
$this->db->trans_rollback();
} else {
$this->db->trans_commit();
}
我的第一个事务将始终返回FALSE
(即使确实我需要回滚它),现在我需要关闭该事务并需要启动另一个事务。
问题在于$this->db->trans_status()
,它总是FALSE
在第二笔交易中返回(即使在$this->db->trans_rollback()
or之后trans_off()
)。
我究竟做错了什么 ?请帮我。
I am using mySql as underlying database.