QT Sqlite 内存模式 简单读写

//本文描述了QT Sqlite 内存模式 ,使用QT 自带库文件,写入和读取。

//QT 6.2.4 MSVC2019调试通过。

//需要在pro文件中加入QT += sql

#include <QCoreApplication>

#include <QSqlDatabase>

#include <QSqlQuery>

#include <QDebug>

#include <QSqlDriver>

//#include <QSqlError>

//#include <QStringList>

//#include <QVariant>

static bool createConnection()

{

//addDatabase的原型是

//QSqlDatabase::addDatabase

// (const QString &type,/*类型*/

// const QString &connectionName = QLatin1String(defaultConnection))//连接名称

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

db.setDatabaseName(":memory:" );

if(!db.open() )

{

qDebug()<<"sqlite memory db is not open";

return false;

}

QSqlQuery query;

query.exec("create table student(id int primary key,name vachar(20))");//

query.exec("insert into student values (0,'Jack_Ma')");

query.exec("insert into student values(1,'HuaTeng_Ma')");

query.exec("insert into student values(2,'QiangDong_Liu')");

query.exec("insert into student values(3,'YanHong_Li')");

query.exec("insert into student values(4,'Lei_Ding')");

return true;

}

int main(int argc,char* argv[])

{

QCoreApplication a(argc, argv);

qDebug()<<"Available drivers:";

QStringList dataDrivers = QSqlDatabase::drivers() ;

for(auto item:dataDrivers)

{

qDebug()<<item;

}

if(!createConnection() )

return 1;

QSqlQuery query;

query.exec("select * from student");

qDebug()<<"all records:";

while(query.next() )

{

qDebug()<<query.value (0).toInt()<<query.value (1).toString();//逐行打印各记录

}

query.exec("select count (*) from student");

qDebug()<<"records count number:";

while(query.next() )

{

qDebug()<<query.value (0).toInt();//打印记录数

}

return a.exec();

}

相关推荐
锦亦之223310 小时前
QT+OSG+OSG-earth如何在窗口显示一个地球
开发语言·qt
q5673152312 小时前
如何在Django中创建新的模型实例
数据库·python·线性代数·django·sqlite
柳鲲鹏13 小时前
编译成功!QT/6.7.2/Creator编译Windows64 MySQL驱动(MinGW版)
开发语言·qt·mysql
三玖诶13 小时前
如何在 Qt 的 QListWidget 中逐行添加和显示数据
开发语言·qt
阳光开朗_大男孩儿19 小时前
DBUS属性原理
linux·服务器·前端·数据库·qt
Alphapeople20 小时前
Qt Modbus
开发语言·qt
竹林海中敲代码20 小时前
Qt Creator 集成开发环境 常见问题
qt·qt工具常见问题
竹林海中敲代码1 天前
Qt安卓开发连接手机调试(红米K60为例)
android·qt·智能手机
长沙红胖子Qt1 天前
关于 Qt运行加载内存较大崩溃添加扩大运行内存 的解决方法
开发语言·qt·qt扩大运行内存
gopher95111 天前
qt相关面试题
开发语言·qt·面试