Qt中QSqlDatabase::removeDatabase()的正确方法

在进调用QSqlDatabase::removeDatabase()前需要先清除掉数据库对象,不然会有警告

方法有2种,一种是指定作用域的方法:

{
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", "user");
    db.setDatabaseName("sqldb.db");
}

db.close();
QSqlDatabase::removeDatabase("user");

另外一种是声明成指针:

QSqlDatabase *db = new QSqlDatabase(QSqlDatabase::addDatabase("QSQLITE", "user"));
db->setDatabaseName("sqldb.db");

db->close();
delete db;
QSqlDatabase::removeDatabase("user");

你可能感兴趣的:(qt)