问题: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 *...");
相关推荐
IT摆渡者9 小时前
MySQL性能巡检脚本分析报告
数据库·mysql
Lyyaoo.10 小时前
Redis基础
数据库·redis·缓存
杨云龙UP10 小时前
ODA登录ODA Web管理界面时提示Password Expired的处理方法_20260423
linux·运维·服务器·数据库·oracle
解救女汉子10 小时前
SQL触发器如何获取触发源应用名_利用APP_NAME函数追踪
jvm·数据库·python
weixin_5206498712 小时前
数据库函数
数据库
Bert.Cai12 小时前
MySQL LPAD()函数详解
数据库·mysql
OnlyEasyCode14 小时前
Navicat 任务自动备份指定数据库
数据库
if else14 小时前
Redis 哨兵集群部署方案
数据库·redis
yejqvow1214 小时前
Pandas 高效实现组内跨行时间戳匹配与布尔标记
jvm·数据库·python
了不起的云计算V14 小时前
从DeepSeek V4适配看国产算力的三个拐点
数据库·人工智能