Qt SQLite 数据库操作教程:读写、添加、更新、删除
以下是使用 Qt 框架读写 SQLite 数据库的步骤,并附带代码示例:
- 安装 SQLite 驱动程序
首先,需要安装 Qt 的 SQLite 驱动程序。可以通过 Qt Maintenance Tool 或在线安装程序安装。
- 创建 SQLite 数据库
可以使用 SQLite Database Browser 或其他工具创建 SQLite 数据库。在本例中,我们创建一个名为 'test.db' 的数据库,其中包含名为 'student' 的表格。
- 创建 Qt 项目
创建一个新的 Qt 项目,并在项目文件中添加以下代码:
#include <QCoreApplication>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 创建数据库连接
QSqlDatabase db = QSqlDatabase::addDatabase('QSQLITE');
db.setDatabaseName('test.db');
// 打开数据库
if (!db.open()) {
qDebug() << 'Failed to connect to database.';
return 1;
}
// 执行 SQL 查询
QSqlQuery query;
query.prepare('SELECT * FROM student');
if (!query.exec()) {
qDebug() << 'Failed to execute query.';
return 1;
}
// 处理查询结果
while (query.next()) {
QString name = query.value(0).toString();
int age = query.value(1).toInt();
qDebug() << 'Name:' << name << 'Age:' << age;
}
// 关闭数据库连接
db.close();
return a.exec();
}
- 运行代码
运行代码,在控制台中将显示 'student' 表中的所有记录。
- 添加新记录
可以使用以下代码添加新记录:
// 插入新记录
QSqlQuery insertQuery;
insertQuery.prepare('INSERT INTO student (name, age) VALUES (:name, :age)');
insertQuery.bindValue(':name', 'Tom');
insertQuery.bindValue(':age', 20);
if (!insertQuery.exec()) {
qDebug() << 'Failed to insert record.';
}
- 更新记录
可以使用以下代码更新记录:
// 更新记录
QSqlQuery updateQuery;
updateQuery.prepare('UPDATE student SET age = :age WHERE name = :name');
updateQuery.bindValue(':name', 'Tom');
updateQuery.bindValue(':age', 21);
if (!updateQuery.exec()) {
qDebug() << 'Failed to update record.';
}
- 删除记录
可以使用以下代码删除记录:
// 删除记录
QSqlQuery deleteQuery;
deleteQuery.prepare('DELETE FROM student WHERE name = :name');
deleteQuery.bindValue(':name', 'Tom');
if (!deleteQuery.exec()) {
qDebug() << 'Failed to delete record.';
}
这些是使用 Qt 框架读写 SQLite 数据库的步骤。您可以根据需要进行修改和扩展。
原文地址: https://www.cveoy.top/t/topic/nESG 著作权归作者所有。请勿转载和采集!