• 4308阅读
  • 2回复

一个关于MySQL 数据库的问题 [复制链接]

上一主题 下一主题
离线yiweiwei3204
 

只看楼主 倒序阅读 楼主  发表于: 2011-08-17
使用MySQL数据库时出现这样一个警告:
          QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work。
是的,我也参照网上的资料 ,警告还是出现。贴下代码 ,求救

数据链接


数据库断开


离线xiangxiao
只看该作者 1楼 发表于: 2011-08-17
不懂,帮顶
离线jay8830095
只看该作者 2楼 发表于: 2011-08-17
貌似你使用的是61850的规约文件数据库啊,是在电力系统应用的吗?
看提示确实是说你删除数据库有问题,
Example:

// WRONG
QSqlDatabase db = QSqlDatabase::database("sales");
QSqlQuery query("SELECT NAME, DOB FROM EMPLOYEES", db);
QSqlDatabase::removeDatabase("sales"); // will output a warning

// "db" is now a dangling invalid database connection,
// "query" contains an invalid result set
The correct way to do it:

{
     QSqlDatabase db = QSqlDatabase::database("sales");
     QSqlQuery query("SELECT NAME, DOB FROM EMPLOYEES", db);
}
// Both "db" and "query" are destroyed because they are out of scope
QSqlDatabase::removeDatabase("sales"); // correct
上面是官方的手册上说的,
db被distroyed,但是你的db应该是全局变量,没有被distroyed吧。
在不断的变化
快速回复
限100 字节
 
上一个 下一个