问题:qt中QSqlQuery::exec: database not open

参考博客:解决QSqlQuery::exec: database not open-CSDN博客

参考博客:QSqlQuery 如何与数据库 QSqlDatabase 关联 保持连接-3YL的博客

发现问题来源于:

当: QSqlDatabase::addDatabase("QSQLITE","自定义连接名");中,使用了自定义连接名之后,

会出现能正常连接数据库,但是查询时,会提示:

QSqlQuery::exec: database not open

这种情况就是查询失败了,查找问题来自于:

QSqlQuery query,一般在使用默认连接名的时候,才可以使用空的构造函数。

但是如果出现了上述的情况,已经修改了默认连接名时,此时需要对默认构造函数进行赋值处理

复制代码
dbConName = QSqlDatabase::addDatabase("QSQLITE","自定义连接名");
 
// 不能用空构造函数,会提示 database not open
QSqlQuery query(dbConName);
 
query.exec("select *...");
相关推荐
其实防守也摸鱼7 分钟前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
android·数据库·学习·ai·oracle·自动化
jason.zeng@150220726 分钟前
canal做mysql的异步传输工具
数据库·mysql·linq
Ivanqhz32 分钟前
BURG(自底向上重写生成器)
服务器·数据库·人工智能·深度学习·算法
仍然.36 分钟前
Redis---主从复制
java·数据库·redis
其实防守也摸鱼1 小时前
网安自测题:掌握核心知识点的实用练习
linux·运维·服务器·前端·数据库·sql·xss
数字化顾问1 小时前
(142页PPT)PLM+ERP系统选型及建设方案建议书(附下载方式)
数据库
木白CPP1 小时前
[QNX] 深入理解 Resource Manager 接口设计
linux·服务器·数据库
Shadow(⊙o⊙)1 小时前
MySQL C/C++链接MySQL使用
数据库·sql·mysql
Mortalbreeze1 小时前
MySQL 基础篇(五):数据操作基础 —— CRUD
linux·服务器·数据库·mysql
Shadow(⊙o⊙)1 小时前
mysql为创建普通用户并创建库赋权
数据库·sql·mysql