c++SQL查询构建库
c++ SQL Query Building Library
我正在寻找一个c++库,它提供与c#SelectQueryBuilder库类似的功能
http://www.codeproject.com/Articles/13419/SelectQueryBuilder-Building-complex-and-flexible-S
也就是说,它允许人们摆脱构建可怕的串联字符串以形成动态SQL查询的做法,而是拥有一个库,该库提供了一个接口,通过向它传递表、要从表中选择的元素等,然后它将SQL查询作为字符串返回。
任何帮助都非常感谢
编辑:我正在构建的示例查询。。。。直到运行时,我们才知道要选择的实际列,例如,不知道会有多少VAR1…VARx,以及它们到底是什么。
SELECT * FROM
(
SELECT
table_1.id,
table_2.name,
(select(COALESCE(sum(table_1.col_1 * 1.0) / NULLIF(sum(table_1.col_2 - table_1.col_3),0) * 100,0))) as VAR1,
(select(COALESCE(sum(table_1.col_4 * 1.0) / NULLIF(sum(table_1.col_5),0) * 100,0))) as VAR2,
sum(table_1.col_2) as VAR3
FROM table_1, table_2
WHERE table_1.id = table_2.id
GROUP BY table_1.id, table_2.name
) VARIABLES
WHERE VAR3 > 1000
使用QSqlQuery,您可以使用占位符并将值绑定到它们:
QSqlQuery query;
query.prepare("INSERT INTO person (id, forename, surname) "
"VALUES (:id, :forename, :surname)");
query.bindValue(":id", 1001);
query.bindValue(":forename", "Bart");
query.bindValue(":surname", "Simpson");
query.exec();
或
QSqlQuery query;
query.prepare("INSERT INTO person (id, forename, surname) "
"VALUES (?, ?, ?)");
query.addBindValue(1001);
query.addBindValue("Bart");
query.addBindValue("Simpson");
query.exec();
http://qt-project.org/doc/qt-5.0/qtsql/qsqlquery.html#approaches-绑定值
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- C++为构建时间获取QDateTime的可靠方法
- 无法在 CLion 中构建 C++ 项目
- 函数向量_指针有不同的原型,我可以构建一个吗
- 如何使用ndk-build.cmd构建Android.so文件
- 查询SQLite数据库中的日期
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- VSCode-有一个红色下划线,但程序构建和运行正确,并且出现配音错误
- 如何在ArangoDb AQL查询中指定数据库
- 构建可组合有向图(扫描仪生成器的汤普森构造算法)
- 无法使用Qt Creator在Windows中构建yaml-cpp
- 构建一个由C和C++文件组成的库
- Qt SQLite没有查询或参数计数不匹配
- 如何使用c++在VS 2019上运行SQL查询
- MongoDB 使用数组中的 OR 条件构建查询
- 如何构建程序以避免查询对象类型?
- 如何在 Linux 下用 C/C++ 构建 IGMP 查询生成器
- c++SQL查询构建库
- 如何在C++中构建mongo$in查询