• 3920阅读
  • 1回复

[提问]怎样断开model与数据库的链接 [复制链接]

上一主题 下一主题
离线maloudatime
 
只看楼主 倒序阅读 楼主  发表于: 2013-01-27
关键词: QT4求助问题SQL
  1. ComboDelegate::ComboDelegate(QObject *parent) :
  2.         QItemDelegate(parent)
  3. {
  4.      convert();
  5. }
  6. void ComboDelegate::convert()
  7. {
  8.    model=new QSqlRelationalTableModel(this);
  9.    model->setTable("rexdata");
  10. }
以上代码下面的代码都是些只读委托 所以不能再委托中给model初始化,所以就有了以下的输出警告:
QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
我查了一下 就是以上代码中如果把convert()删掉就不会出现 但是又必须用到convert(),因为要将数据中的所有字段。
主要问题就是在对话框推出后,这个model仍然在被使用,导致没有被“释放掉”,出现了以上的警告,现在我想问的是怎样断开model与数据库的链接。
离线XChinux

只看该作者 1楼 发表于: 2013-01-28
那不用QSqlRelationalTableModel,自己查,查完后构造QStandardItemModel用。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个