Qt中SQLite数据库的使用
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QVariant>
#include <QDebug>
int main(int argc, char *argv[]) {
// 初始化数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName(":memory:"); // 使用内存数据库
// 打开数据库
if (!db.open()) {
qDebug() << "无法打开数据库";
return -1;
}
// 执行SQL语句
QSqlQuery query;
bool success = query.exec("CREATE TABLE People (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)");
if (!success) {
qDebug() << "创建表失败:" << query.lastError();
return -2;
}
// 插入数据
success = query.exec("INSERT INTO People (name, age) VALUES ('Alice', 30)");
if (!success) {
qDebug() << "插入数据失败:" << query.lastError();
return -3;
}
// 查询数据
success = query.exec("SELECT * FROM People");
if (!success) {
qDebug() << "查询数据失败:" << query.lastError();
return -4;
}
while (query.next()) {
int id = query.value(0).toInt();
QString name = query.value(1).toString();
int age = query.value(2).toInt();
qDebug() << id << name << age;
}
// 关闭数据库
db.close();
return 0;
}
这段代码展示了如何在Qt中使用SQLite数据库。首先,它设置了数据库类型为SQLite,并指定使用内存数据库。然后,它尝试打开数据库,创建一个表,插入数据,执行查询,并遍历结果集打印数据。如果在任何一个步骤中出现错误,它将输出错误信息并返回相应的错误代码。最后,它关闭了数据库连接。这是一个简单的例子,展示了如何在实际应用程序中使用Qt操作数据库。
评论已关闭