在qt中开发的我的应用程序中与Sqlite的应用程序连接



在QT5的应用程序中,我有以下代码

QString sql = "Select * from table";
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("./au.sqlite");
db.open();
QSqlQuery query(sql);
query.exec();

但是当我得到的结果只得到一个结果时,select查询只给我一个结果,我不知道如何解决这个问题。如果我在while循环中添加query.next(),我只得到一次迭代。

如果查询成功,有一个bool函数会返回true。回顾文档:

成功执行的SQL语句将查询的状态设置为活动,以便isActive()返回true。否则,查询的状态将设置为非活动状态。

这是检查结果的方法。如果是false,那么您应该尝试重写sql查询文本,以便函数sql单词(如SELECT、FROM等)使用大写(文档中显示的方式),并尝试再次执行查询。

下面是文档中的一个例子:

QSqlQuery query("SELECT country FROM artist");
while (query.next()) {
    QString country = query.value(0).toString();
    doSomething(country);
}

您可以查看Qt5发行版中包含的sqlbrowser示例。在数据库中运行查询。

相关内容

  • 没有找到相关文章

最新更新