pqxx中的事务对象

时间:2016-01-27 20:35:41

标签: c++ postgresql object libpqxx

我是PostgreSQL和pqxx的新手。我用C ++编写代码。 我刚刚写了一个例子。 Everythig没问题但是当我执行我的程序时,我看到一个错误:

在交易仍处于活动状态时开始非交易。

以下是代码:http://pastebin.com/p8CJ6Eaz

如果有人知道如何使用这些交易对象,请解释我。 向所有人致以问候并感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

消息Started nontransaction while transaction still active实际上不是错误。 pqxx不是为处理嵌套事务而设计的,它一次只能处理一个事务。你可以在这里阅读细节; pqxx reuse / reactivate a work transaction

如果您在发出非事务sql命令之前提交事务,那么您的代码实际上正常工作,所以我会改变;

取消注释第49行的提交以完成交易; W.commit();

并将第69行W.exec(sql);更改为非交易工作; N.exec(sql);

希望有所帮助。