pqxx 中的事务对象

Transactional objects in pqxx

本文关键字:对象 事务 pqxx      更新时间:2023-10-16

我是PostgreSQL和pqxx的新手。我用C++编码。我刚刚写了一个示例程序。一切都很好,但是当我执行程序时,我看到一个错误:

在事务仍处于活动状态时启动非事务。

这是代码: http://pastebin.com/p8CJ6Eaz

如果有人知道如何使用这些事务对象,请解释一下。向大家问好,并感谢您的帮助。

消息Started nontransaction while transaction still active实际上不是错误。 pqxx不是为处理嵌套事务而设计的,它一次只能处理一个事务。您可以在此处阅读详细信息;PQXX 重用/重新激活工作事务

只要您在发出非事务 sql 命令之前提交事务,您的代码实际上工作正常,所以我会更改;

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

并将第 69 行W.exec(sql);更改为非事务性工作; N.exec(sql);

希望有帮助。