QT c++ 同时使用sqlite 和mysql数据库的问题

在项目开发中,同时使用了sqlite 和mysql数据库,分开这两部分运行功能都正常,但是一起运行,就异常,sqlite部分不能使用。

现象:出现如下提示

QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.

解决办法,addDatabase函数时候指定数据库类型和连接名称。

原因:如果不指定连接名称,则是默认连接'qt_sql_default_connection',那么两种数据库用

一个连接引起错乱。

The connection in the snippet will be the default connection, because we don't pass the second argument to addDatabase(), which is the connection name. For example, here we establish two MySQL database connections named "first" and "second":

原型:

static\] QSqlDatabase QSqlDatabase::addDatabase(const QString \&type, const QString \&connectionName = QLatin1String(defaultConnection)) //-------------以下是截取的代码------------------- //---第1部分,DB是长连接 //... DB = QSqlDatabase::**addDatabase**("QSQLITE","SQLiteConnection1"); //... ///---第2部分,db是短连接 //... // if(QSqlDatabase::**contains**("MySQLConnection1"))//为避免重复,先移除掉 // QSqlDatabase::**removeDatabase**("MySQLConnection1");// QSqlDatabase db = QSqlDatabase::**addDatabase**("QMYSQL", "**MySQLConnection1**"); //... db.close(); //...

相关推荐
island131432 分钟前
【Redis#10】渐进式遍历 | 数据库管理 | redis_cli | RES
数据库·redis·bootstrap
心想事成的幸运大王38 分钟前
Redis的过期策略
数据库·redis·缓存
倔强的石头_38 分钟前
CentOS 上安装KingbaseES(ISO包)详细教程
数据库
2401_897930061 小时前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j
诗句藏于尽头2 小时前
Django模型与数据库表映射的两种方式
数据库·python·django
寻星探路2 小时前
数据库造神计划第六天---增删改查(CRUD)(2)
java·大数据·数据库
盖世英雄酱581363 小时前
Read timed out问题 排查
java·数据库·后端
云动雨颤4 小时前
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
数据库·spring boot·tomcat
RestCloud4 小时前
Kafka实时数据管道:ETL在流式处理中的应用
数据库·kafka·api