当前位置: 代码迷 >> QT开发 >> qt打开sqlite数据库文件后,怎么删除文件
  详细解决方案

qt打开sqlite数据库文件后,怎么删除文件

热度:11   发布时间:2016-04-25 04:37:45.0
qt打开sqlite数据库文件后,如何删除文件
用以下代码打开、读取数据库文件后,关闭数据库连接,removedatabae之后,删不掉文件,为什么?
请各位大虾帮忙,先谢过了。

C/C++ code
    {        QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE","DB1");            db.setDatabaseName("tt.db3");        bool ok = db.open();        bool bLoad = db.isDriverAvailable("QSQLITE");        bool bOpen = db.isOpen();        bool berr = db.isOpenError();        QSqlQuery query(db);//"SELECT area FROM tbl_score");        query.exec("SELECT area FROM tbl_score");        while (query.next()) {            QString country = query.value(0).toString();            std::cout<<country.toStdString()<<std::endl;        }        db.close();    }    QSqlDatabase::removeDatabase("DB1");    QFile::remove("tt.db3");


以上哪里处理错了,还是少添加了什么东西?
直接删除文件也不行!

------解决方案--------------------
addDatabase("QSQLITE","DB1"); 去掉DB1参数,采用缺省连接。

试试看。
------解决方案--------------------
用lastError函数打印看看报什么错
------解决方案--------------------
你使用过后直接删除,又不需要保存,为什么不把数据库放到内存里面呢. :memory: 程序结束后直接消失,提高效率
  相关解决方案