QT对sqlite数据库进行读写

2025-10-27 18:55:54

1、这里以vs2013+qt5为开发环境,环境搭建请自行解决

在自己的工程里,首先加入qt的sql库引用,如下图所示,打开QT的配置界面,勾选”sql“就可以了

QT对sqlite数据库进行读写

QT对sqlite数据库进行读写

2、在自己的工程文件中包含相关头文件

#include <QSqlDatabase>

#include <QSqlError>

#include <QSqlQuery>

QT对sqlite数据库进行读写

3、初始化数据库链接,如果是第一次打开会创建一个数据库文件

QSqlDatabase database;

if (QSqlDatabase::contains("qt_sql_default_connection"))

{

database = QSqlDatabase::database("qt_sql_default_connection");

}

else

{

database = QSqlDatabase::addDatabase("QSQLITE");

database.setDatabaseName("xxx.db");//创建xxx.db文件

database.setUserName("root");

database.setPassword("123456");

}

如下图2所示,数据库文件已经成功创建了

QT对sqlite数据库进行读写

QT对sqlite数据库进行读写

4、接下来是打开数据库,链接成功后就可以进行操作了

QT对sqlite数据库进行读写

5、简单的创建表操作,创建一个"test"表

QSqlQuery sql_query;//这个是数据库操作对象

QString create_sql = "CREATE TABLE test(name VARCHAR(32) primary key,value VARCHAR(260));";

sql_query.prepare(create_sql);

if (!sql_query.exec())

{

qDebug("Error: Fail to create test table.%s", sql_query.lastError().text());

}

else

{

qDebug("Table test created!");

}

如下图2所示,表“test”已经成功创建了

QT对sqlite数据库进行读写

QT对sqlite数据库进行读写

6、其它的增、删、改、查,也是一样,跟普通的sql语法一样,简单说一下插入操作,其它操作也是类似的

QSqlQuery sql_query;

create_sql = "insert into test values (?, ?);";

sql_query.prepare(create_sql);

sql_query.addBindValue("name1");

sql_query.addBindValue("value1");

if (!sql_query.exec())

{

qDebug("Error: Fail to insert to test table.%s", sql_query.lastError().text());

}

如图2所示,打开数据库是可以查看到插入的数据的

QT对sqlite数据库进行读写

QT对sqlite数据库进行读写

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢