QT C++ sqlite 对多个数据库的操作

//本文描述,QT 对多数据库的操作。

//你可能会想,多数据库的操作时,查询语句怎么知道是哪个数据库。

//QT提供了这样一种构造函数 QSqlQuery(const QSqlDatabase &db)

//指定数据库

//在QT6.2.4 MSVC2019调试通过。

//效果见下图,说明了啥,并不会冲突。

//代码如下,不要忘了在pro文件中,添加QT += sql

#include <QSqlDatabase>

#include <QSqlQuery>

#include <QDebug>

#include <QSqlDriver>

#include <QElapsedTimer>

static void func3()

{

QSqlDatabase db1=QSqlDatabase::addDatabase("QSQLITE","connection1");//指定对象1的数据库类型和连接名称

db1.setDatabaseName("d:/test1.db");//设定数据库1名称

QSqlQuery query1(db1);//定义查询对象1(关联数据库)

QSqlDatabase db2=QSqlDatabase::addDatabase("QSQLITE","connection2");//指定对象2的数据库类型和连接名称

db2.setDatabaseName("d:/test2.db");//设定数据库2名称

QSqlQuery query2(db2);//定义查询对象2(关联数据库2)

if (db1.open())

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

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

db1.close();

}

else

qDebug()<<"没打开db1";

if (db2.open())

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

query2.exec("insert into student values(0,'HuaTeng_Ma')");

db2.close();

}

else

qDebug()<<"没打开db2";

}

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

{

QCoreApplication a(argc, argv);

QElapsedTimer t;

t.start();

func3();

qDebug()<<t.elapsed()<<"ms";

return a.exec();

}

相关推荐
kakacc:几秒前
记录一次巧妙的SQL:一对多关联导致的 sum () 、count()等group函数重复计算问题
数据库·sql
心随雨下20 分钟前
Redis中Geospatial 实际应用指南
数据库·redis·分布式·缓存
黑夜管理员22 分钟前
Sql Server安装报错“服务没有及时响应启动或控制请求”
数据库·sql server
NineData44 分钟前
NineData云原生智能数据管理平台新功能发布|2025年9月版
数据库·云原生·devops·ninedata·数据库迁移·数据复制·风险sql管控
junnhwan1 小时前
【苍穹外卖笔记】Day04--套餐管理模块
java·数据库·spring boot·后端·苍穹外卖·crud
一枚正在学习的小白2 小时前
PG数据文件位置迁移
linux·运维·服务器·数据库
真的想不出名儿2 小时前
上传头像到腾讯云对象存储-前端基于antdv
java·数据库·腾讯云
Dreams_l2 小时前
初识redis(分布式系统, redis的特性, 基本命令)
数据库·redis·缓存
数据库知识分享者小北2 小时前
Qoder + ADB Supabase :5分钟GET超火AI手办生图APP
数据库·后端
点亮一颗LED(从入门到放弃)3 小时前
SQLite3数据库——Linux应用
linux·数据库·sqlite