Qt如何查询表中的数据呢?
首先我们需要连接数据库,连接完了,我们进行操作数据库。
连接数据库的代码:
bool MainWindow::connectToDatabase(QSqlDatabase &db, const QString &host, const QString &dbName, const QString &user, const QString &password)
{db = QSqlDatabase::addDatabase("QMYSQL");db.setHostName(host);db.setDatabaseName(dbName);db.setUserName(user);db.setPassword(password);if (!db.open()) {qDebug() << "数据库连接失败:" << db.lastError().text();return false;} else {qDebug() << "数据库连接成功!";return true;}
}
连接完后,就是数据库的操作:我们定义一个查询函数:
QSqlQuery MainWindow::queryDatabase(QSqlDatabase &db, const QString &query)
{QSqlQuery sqlQuery;sqlQuery = QSqlQuery(db);if (!sqlQuery.exec(query)) {qDebug() << "查询失败:" << sqlQuery.lastError().text();}return sqlQuery;
}
查询语句得到后就要输出数据:
QSqlQuery query=this->queryDatabase(db,"select * from user");while (query.next()) {QString result = query.value(0).toString();QString result1 = query.value(1).toString();qDebug() << result<<" "<<result1;}
我们按列输出数据库表中的数据。
这样就可以实现数据库的查询操作。