Qt Sqlite Query不起作用

时间:2011-12-22 00:15:01

标签: c++ qt

我正在尝试将此查询运行到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

如果我执行任何其他选择标记,它的工作非常精细

1 个答案:

答案 0 :(得分:0)

问题是默认情况下禁用了SOUNDEX算法,在构建sqlite时必须使用编译器标记-DSQLITE_SOUNDEX=1

因此,您必须使用此标记构建sqlite驱动程序,然后通过将其链接到sqlite build来构建插件。