数据库多次重复初始化会造成以下问题:

QSqlDatabasePrivate::removeDatabase: connection 'test-connect' is still in use, all queries will cease to work.
QSqlDatabasePrivate::addDatabase: duplicate connection name 'test-connect', old connection removed.

解决方法:

    if (!QSqlDatabase::contains("test-connect"))
        m_db = QSqlDatabase::addDatabase("QSQLITE","test-connect");  //第一次打开数据库时,连接数据库。
    else
        m_db = QSqlDatabase::database("test-connect");   //数据库已经打开后,再次连接时,获取句柄。
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐