我正在尝试将此查询运行到SQlite数据库,但它没有从Qt执行 但是当我去navicat并执行相同的查询时,它可以正常工作而没有任何问题
QSqlQuery query;
query.prepare("SELECT token FROM tokens WHERE SOUNDEX(token) = SOUNDEX('search')");
if(!query.exec()){
QMessageBox::information(this,"Error","query won't execute"); //will be displayed
}
QSqlRecord rec = query.record();
int cols = rec.count(); //0
如果我执行任何其他选择标记,它的工作非常精细
答案 0 :(得分:0)
问题是默认情况下禁用了SOUNDEX
算法,在构建sqlite
时必须使用编译器标记-DSQLITE_SOUNDEX=1
。
因此,您必须使用此标记构建sqlite
驱动程序,然后通过将其链接到sqlite
build来构建插件。