2017-10-16 35 views
0

我試圖使用模板查詢來構建我的sql查詢。以下是示例代碼:mysqlpp:使用模板查詢時的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服務器版本正確的語法在1號線

近\「2 \」使用,我認爲它是由SQLQueryParms型引起的手冊,但沒有教程,也不是文件表明任何方法來解決這個問題。

順便說一句,我如何得到解析的查詢字符串(與模板參數代替)?我試過query.str(version),但它和query.str()一樣。

回答

0

我的不好。忘記了一個重要的函數調用query.parse()

現在所有的工作。