问题标签 [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 回答
424 浏览

java - postgres/libpqxx:拒绝通过密码进行身份验证

我在大学里使用了两个工具,它们都使用同一个 postgres 数据库。用 Java 编写的那个使用 jdbc-driver 并且工作得很好。

用 C++ 编写的第二个有一些困难。它给了我以下错误

连接字符串如下所示

我检查了 10 次这样的值,两个应用程序中的值完全相同。我认为它可能是 pg_hba.cfg。所以我尝试了很多,终于把所有的门都打开了:

怎么可能,尽管给出了密码,但 C++ 工具总是尝试使用缩进身份验证方法。(或者是 db..?) libpqxx 中是否有任何特殊情况我需要注意?

0 投票
0 回答
230 浏览

c++ - pqxx c++ library Valgrind:条件跳转或移动取决于未初始化的值

我在我的项目中使用libpqxx-4.0C++ 库来处理远程 Postgresql 数据库。一切正常,但我尝试使用 valgrind 运行我的项目并收到近百万条错误消息 Conditional jump or move depends on uninitialised value(s)Use of uninitialised value of size 8

它似乎直接发生在库内的某个地方,因为 valgrind 跟踪说(例如):

在我这边,导致此错误的代码是

get_conn_string 方法原型在哪里

请问您知道我可能做错了什么还是图书馆本身有问题?

0 投票
2 回答
1489 浏览

c++ - 行号 0 超出范围 0..-1 LIBPQ

执行此语句后,我收到以下错误。

但是,当我在 postgresql 中运行相同的查询时,它没有任何问题。

唯一的问题是,如果传递的查询参数不在数据库中,则会引发运行时错误。如果您提供数据库中的确切查询参数,它会正常执行。

0 投票
1 回答
4203 浏览

postgresql - 获取 libpq 运行时版本(来自 libpqxx)

在 libpqxx 参考中,我有时可以阅读仅限于底层 libpq 版本的内容(“需要 PostgreSQL 7.4 或更高版本的 libpq 版本。”),例如这里

现在问题:(1)如何获取当前程序中使用的libpq版本(使用libpqxx)?(2) 据我所知,在向新的 libpq 版本前进时,libpqxx 不一定需要重新编译。替换旧的 libpq.dll 涵盖(通常)新技术,例如我的情况下的 ssl 压缩。这就是为什么我认为应该在运行时收到 libpq 版本。

0 投票
0 回答
944 浏览

g++ - /usr/bin/ld: 找不到 -lpq

我想通过 libpqxx (C++) 连接到 postgresql

使用 -lpq 运行 g++ 时出现此错误:

当我删除 -lpq 它运行良好并且可以正常工作时,我想知道为什么使用 -lpq 它不起作用以及如何修复它。

谢谢,迈克尔。

0 投票
2 回答
394 浏览

c++ - 将 C++ 文件上的参数输入到全局变量

我想为全局变量提供一些外部参数。

我的实际代码是:

而且我希望能够使用 argv 参数提供代码,并且仍然使用连接 C 作为全局。

有什么想法吗?提前致谢...

所做的更改:

我得到了这样的错误:

main.cpp:在函数 'void OpenPSQL()' 中:

main.cpp:268: 错误:在'C'中请求成员'is_open',它是非类类型'pqxx::connection*'</p>

0 投票
1 回答
1813 浏览

c++11 - 在 Kdevelop 上使用 C++11 中的 libpqxx 构建

我正在尝试构建一个需要 lipqxx 功能的 C++ 程序。我在 Ubuntu 上,我正在尝试使用 Kdevelop。

我用 Code::Blocks 成功地做到了,但我正在努力寻找更好的 IDE。

现在,我用 Kdevelop 做了什么。我创建了一个简单的示例:

我修改了 CmakeList.txt 以包含 pqxx 目录并与 libpqxx.so 链接:

此时,构建过程开始工作

但我需要做些别的事情,我想在 C++11 中工作。所以我添加了一个 -std=c++11 选项,右键单击我的项目,打开 Configuration > Cmake > Advanced Values > CMAKE_CXX_FLAGS。

我收到以下错误:

它继续错误......有人可以帮我理解我做错了什么吗?

0 投票
1 回答
873 浏览

c++ - 连接 C++ 和 Postgresql

我正在尝试将 C++ 连接到 Postgres。

我最近使用 Homebrew 安装了 libpqxx,如下所示:

然后我用:make DatabaseTest在文件 DatabaseTest.cpp 上做到了。

我运行了以下简单的程序,遇到了一个奇怪的错误,我不知道该怎么办......

我运行 make 它告诉我链接器失败了,这对我来说没有多大意义......有什么想法可能在这里发生吗?抱歉,如果这很简单,自从我完成 C++ 以来已经有一段时间了!

0 投票
2 回答
13918 浏览

c++ - 如何在 Postgresql for C++ 中准备语句和绑定参数

我对图书馆很陌生,C++并且对图书馆有所了解pqxx。我要实现的是准备语句和绑定参数。在PHP我习惯于以如此简洁明了的方式执行此操作:

或使用令牌:

我试图从 pqxx文档中弄清楚如何实现这一点,但对我来说,文档看起来很乱,并且缺少简短的示例(就像我在上面提供的那样)。我希望在Postgresql处理C++.

0 投票
1 回答
1344 浏览

c++ - 如何使用 libpqxx 检查列类型?

libpqxx在我的项目中使用。该项目是具体的,因为我不知道将执行哪些 SQL 语句。让我们说用户输入语句:

SELECT * FROM table1

执行该语句我得到结果记录,我可以遍历它。

如果我知道type第一个元素是什么row,可以说它是int,我可以得到如下值:

但我不知道。有方法type()(我可以在行元素上调用它)和它return的类型oid(它是某种列标识符)它是数值,但我不知道如何使用该值来获取行元素的类型。我的问题是:

是否有一些枚举或其他方式来使用它oid来获取行元素type