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


    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
    这个也有些复杂,需要仔细看看才能明白。

  • 相关阅读:
    CentOS安装KDE
    __builtin_expect — 分支预测优化
    Linux中CPU亲和性(affinity)
    字节序
    gethostbyname
    字符串搜索算法
    排序算法
    Linux下使用http协议下载文件
    POSIX Timer
    POSIX-Data Structure
  • 原文地址:https://www.cnblogs.com/findumars/p/5281938.html
Copyright © 2020-2023  润新知