在 Qt 中执行 %LIKE% 查询

Execute a %LIKE% query in Qt

我想使用值绑定在 qt 中执行参数化。

这是代码:

QString name = "Foo";
query->prepare("SELECT Name, Surname FROM employee WHERE Surname LIKE %:surname%");
query->bindValue(":surname", name);

问题出在 % 字符上:它在执行查询时会产生错误,但是我不知道如何在 qt 中使用它。

您不必在准备中使用“%”,而是连接 QString,另一方面,到目前为止,我不需要使用 QSqlQuery 指针,所以我建议不要使用它,因为它有一个拷贝构造函数。

QSqlQuery query;
QString name = "Foo";
query.prepare("SELECT Name, Surname FROM employee WHERE Surname LIKE :surname");
query.bindValue(":surname", QString("%%1%").arg(name));
query.exec();
while(query.next())
    qDebug()<< query.value(0) << query.value(1);