我尝试使用模板查询来构建我的sql查询。这是示例代码:
unsigned int version = 2;
try {
// key_version is INT UNSIGNED
mysqlpp::Query query = conn->query("SELECT * FROM agentlist WHERE key_version != %0q");
mysqlpp::StoreQueryResult res = query.store(version);
// string type param also caused the same problem
// mysqlpp::StoreQueryResult res = query.store(std::to_string(version));
} catch (const exception &ex) {
// deal with exceptions
}
代码将转到catch
部分。 ex.what()
:
您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在\' 2 \'附近使用正确的语法。在第1行
我认为它是由SQLQueryParms
类型引起的,但教程和文档都没有显示任何解决此问题的方法。
query.str(version)
,但它与query.str()
相同。
答案 0 :(得分:0)
我的坏。忘记了一个重要的函数调用query.parse()
。
现在一切正常。