我正在尝试使用字符串转义功能,而无需访问打开的 pqxx::connection。
考虑以下代码:
#include <pqxx/pqxx>
#include <iostream>
int main() {
pqxx::connection c;
std::cout << c.quote("this is a test") << std::endl;
}
它抛出我的连接被打破了。如果有另一种方法可以实现这一点(希望没有数据库连接),有人可以给我一个标志吗?我忽略了什么吗?
更新:
我在libpq的文档中找到了为什么此功能可能需要活动连接的可能原因:
与 PQescapeStringConn 的唯一区别是 PQescapeString 不采用 PGconn 或错误参数。因此,它无法根据连接属性(例如字符编码)调整其行为,因此可能会给出错误的结果。此外,它无法报告错误情况。