很好的QSqlDatabase问题说明,关于连接错误(转)
QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
编译无问题,在执行时终端出现以下字母
执行中的数据库操作如下
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/dot.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
经查,是由于在数据库使用过程中,又再次调用QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); 造成了问题。
因此在其他地方的数据库操作中修改此代码。
可以在执行QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); 不用默认的defaultConnection,自己加入名字,然后在每次的添加时可改为:
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
这样该问题已解决。
但再次执行时出现了
经查,这是由于在执行query.exec时没有指定db。将所有执行query.exec改为
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![QT数据库错误 QT数据库错误](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
这样就可以了。
感谢原作者,转:http://blog.sina.com.cn/s/blog_82544279010128iu.html