2014-07-15 35 views
1

我想在php和mysql中实现准确的会计。我的代码工作得很好。如果发生错误时如何返回SQL查询?

借记:

$query = new QUERY(array('TABLE'=>'account_treasury_local_agent')); 
$query->save($data); 

而对于信用:

$query = new QUERY(array('TABLE'=>'account_treasury_headquarters')); 
$query->save($data2); 

的问题是,我要恢复整个事务如果在第二功能的错误。我的意思是,我想一起运行这两个查询。没有借方,信用不可能,反之亦然。

编辑:

我知道,这是可能的事务开始的方式,提交,回滚。但是,我不知道如何用php来实现它。

谢谢。

+1

你使用了一些特定的PHP框架?如果没有,你应该发布QUERY类,以便知道如何帮助你编辑保存功能以使其使用交易 – clami219

+0

使用mysqli你有函数mysqli :: begin_transaction mysqli :: commit和'mysqli :: rollback' [链接](http://php.net/manual/en/mysqli.begin-transaction.php) – JokiRuiz

回答

1

开始交易:BEGIN(或START TRANSACTION)。

提交:COMMIT

回滚:ROLLBACK

就是这样。

+0

谢谢。但是,你有任何在PHP的例子? –

+0

'mysqli_query('BEGIN');'我怀疑你在这里使用特定的**框架**,你不确定如何在该框架中运行查询,但我们当然不能猜测更多关于框架。 PHP本身没有运行查询的特殊/复杂的方式。 – VoteyDisciple

+0

我正在使用codeigniter。但问题是,我没有使用codeigniter的默认数据库查询。我建立了自己的类来运行查询。我想,我明白了。我应该根据我的查询类开始一个小例子。 –