首页 > 数据库技术 > 详细

QSqlDatabase::addDatabase第一次运行的时候,生成SQLite文件的同时会产生一个默认连接

时间:2016-03-16 07:06:07      阅读:1331      评论:0      收藏:0      [点我收藏+]

QSqlDatabase::addDatabase第一次运行的时候,生成SQLite文件的同时会产生一个默认连接:

QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE");
QString myconn = m_createname = database.connectionName();
database.setDatabaseName(myfile);

然而真正查询的时候,却又使用了新的连接:
m_database = QSqlDatabase::addDatabase("QSQLITE", "mynewconn");
m_database.setDatabaseName(mysqlfile);

有些情况下想删除这个数据库文件,那么除了关闭mynewconn以外,还必须关闭myconn,否则就无法接触数据库文件的使用,从而导致无法删除。

怎么解除关闭数据库连接?使用:
http://doc.qt.io/qt-5/qsqldatabase.html#removeDatabase
这个也有些复杂,需要仔细看看才能明白。

QSqlDatabase::addDatabase第一次运行的时候,生成SQLite文件的同时会产生一个默认连接

原文:http://www.cnblogs.com/findumars/p/5281938.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!