问题标签 [libpqxx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1495 浏览

c++ - pqxx中的事务对象

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

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

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

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

0 投票
1 回答
1043 浏览

c++ - 打开PostgreSQL数据库连接的效率

我们有一个 PostgreSQL 数据库来存储我们的 C++ 应用程序的数据,我们使用libpqxx连接到它。

pqxx::connection目前,我们为要运行的每个事务打开一个新事务。在部署中,我们预计每分钟最多执行大约四到五打事务,并且我们的应用程序将 24x7x365 运行。

根据 PostgreSQL架构基础

...[PostgreSQL 服务器进程] 为每个连接启动(“分叉”)一个新进程。

在我看来,我们pqxx::connection为每笔交易打开一个新进程的方法确实效率低下,因为我们每分钟间接产生几十个新进程。这是我们真的应该担心的事情吗?

在 PostgreSQL wiki 上看到 PostgreSQL 本身并不维护客户端连接进程池,所以看起来我们确实需要担心它。如果是这样,是否有一种“正确”的方法可以无限期地保留pqxx::connection对象,以便每次我需要连接到数据库时都不会派生一个新进程?请记住,我的应用程序需要每天运行一整天,因此我的 TCP 连接在很长一段时间后断开是不可接受的。

0 投票
0 回答
1088 浏览

c++ - C ++在postgresql数据库中插入一个html字符串

我正在尝试将 html 字符串插入到数据库列中,但我遇到了 html 内的引号等字符的问题。我使用 libpqxx 作为我的 C++ 库在数据库中执行查询,我使用函数 pqxx::quote() 在我的字符串之间添加引号,这样我在执行插入查询时就不会遇到语法问题,但问题是当我列出数据库中的行时,html 列仅显示二进制数据。我不知道这是为什么?这是创建表的sql:

这是 C++ 代码:

执行这段代码后在数据库中的结果:

注意:我会说 quote() 在这里不可靠,有人知道解决这个问题的更好方法吗?

编辑:尝试使用原始文字后。

仍然不起作用:

0 投票
1 回答
1780 浏览

c++ - 如何使用 libpqxx 接收来自 PostgreSQL 数据库的通知?

我正在编写 C++ 应用程序,它需要通过libpqxx库从 PostgreSQL 接收数据更改通知。但它的教程不包括这样的用例。通知必须在多个渠道上接收。此外,我使用boost::asio作为网络库,如果可能的话,我最好使用带有异步回调通知事件的asio套接字类,而不是轮询原始 BSD 样式套接字。有人可以为此提供示例代码或链接到一些外部资源以了解如何实现吗?

0 投票
1 回答
137 浏览

c++ - C++项目中从ibpp到pqxx的转换

我有一个使用 Firebird(驱动程序 ibpp)的 C++ 代码,我需要转换为 PostgreSQL(使用 pqxx)。我需要更改的主文件是这个。我开始了,但现在我遇到了困难。

我不知道如何使用 pqxx 重写它。我已经在 pqxx 中重写了一些代码,你可以在这里看到它。那么你能帮我处理这个片段吗?

我刚刚开始使用 SQL,如果有人能解释一下 ibpp 代码是如何工作的,那可能会很棒。如果你留下一些带有大 pqxx 示例的链接,那就太好了。

0 投票
2 回答
1991 浏览

postgresql - 安装 psycopg2 后在 ubuntu 14.04 中安装 libpq-dev 时出错

我正在尝试安装项目的所有要求,所以我运行命令

但它给出了错误

现在我知道我必须安装 postgresql-server 所以我使用了以下命令

到目前为止一切都很好,然后我跑了

然后我运行我的命令再次安装要求但得到了同样的错误然后我在谷歌上搜索并尝试了

但我收到以下错误

现在我无法检测和纠正损坏的包裹......请帮助我......

0 投票
1 回答
168 浏览

c# - 使用 pqxx 获取和发布表类型

朋友们,美好的一天。我正在使用pqxx,我有一些问题。

1. 我有两张表: table1 (table1_id integer) and table2 (table1_id integer, another_id integer)一对多的关系。如何轻松获取视图中的信息,例如:table1_id、向量 another_ids?现在我在脚本中使用序列化(字符串连接到“%d %d %d ...”)并在我的 c++ 代码中反序列化。我还需要在 table1 中插入值。我如何在一笔交易中做到这一点?

2.我把存储过程称为

可能存在任何方式来做到这一点,就像在 c# 中一样?

非常感谢!

0 投票
0 回答
758 浏览

postgresql - PostgreSQL 连接超时建议

我在官方 postresql 文档页面上找到了这个

connect_timeout 连接的最大等待时间,以秒为单位(写为十进制整数字符串)。零或未指定意味着无限期等待。不建议使用小于 2 秒的超时。

为什么不小于 2 秒?

0 投票
1 回答
507 浏览

c++ - 如何替换 PostgreSQL+ 上表列中的值?

我使用libpqxx在 C++ 中连接到 PostgreSQL DB。我想加密一列表并将其替换为当前列。我写这个:

但结果就像加密之前一样。我有什么问题,如何将值替换为列中的其他值?

0 投票
2 回答
2063 浏览

c++ - libpqxx:如何绑定参数数组

我想尽快在 postgres 表中插入许多参数。

现在我浪费了太多时间来一一绑定参数。代码看起来几乎是这样的:

如我所见,commit10 000 个元素需要 0.001 秒甚至更少,但绑定大约需要 10 秒。

我想将所有参数绑定为值数组。如何使用 pqxx 做到这一点?或者有更好的方法来减少时间?