小编Taz*_*dze的帖子

QSqlDatabasePrivate::removeDatabase: connection 'myConnectionName' 仍在使用中,所有查询将停止工作

我有一个文件夹,里面有很多数据库。有时可能会删除或添加数据库到文件夹中。所以我使用 QTimer 并读取所有数据库。

这是我的代码:

this->timer = new QTimer(this);
this->timer->setInterval(15000);
connect(this->timer, &QTimer::timeout, this, [=]() {
    QString path = "C:\\Users\\User\\Desktop\\DAXI SMS SENDER\\SMSSenderAllBASE";
    //QString path = qApp->applicationDirPath() + "\\SMSSenderAllBASE";
    QDir recoredDir(path);
    QStringList allFiles = recoredDir.entryList(QDir::NoDotAndDotDot | QDir::System | QDir::Hidden  | QDir::AllDirs | QDir::Files, QDir::DirsFirst);
    for (int i = 0; i < allFiles.size(); i++) {
        QString fullPath = path + "\\" + allFiles[i];
        QString connectionName = allFiles[i];
        connectionName = connectionName.remove(connectionName.size() - 4, 4);
        QSqlDatabase db = QSqlDatabase::addDatabase("QIBASE", connectionName);
        db.setDatabaseName(fullPath);
        db.setHostName("localhost");
        db.setPort(3050);
        db.setUserName("SYSDBA");
        db.setPassword("masterkey");

        thrdHelperSendSMS …
Run Code Online (Sandbox Code Playgroud)

c++ sql database qt

2
推荐指数
2
解决办法
7747
查看次数

标签 统计

c++ ×1

database ×1

qt ×1

sql ×1