回答

收藏

QSqlDatabasePrivate :: removeDatabase:连接“ myConnectionName”仍在使

技术问答 技术问答 459 人阅读 | 0 人回复 | 2023-09-12

我有一个文件夹,里面有很多数据库。有时可以删除数据库或将数据库添加到文件夹中。因此,我使用它QTimer并读取所有数据库。
9 `8 k6 T1 t2 C) V1 v7 h& ]; k- |这是我的代码:' i( @5 ^9 P/ @- c: z- g
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:irsFirst);    for (int i = 0; i run();this->timer->start();是的,我肯定会出现helperFinished这次我将与基准站无关。
" E7 v# t. Q0 J% Y编辑:    如果我删除
$ Y8 l, k, U% d8 ]; e            thrdHelperSendSMS *help = new thrdHelperSendSMS(db,this);   connect(help,&thrdHelperSendSMS::helperFinished,this,[=](QString connectionName){        QSqlDatabase t_db = QSqlDatabase::database(connectionName);       t_db.close();;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QSqlDatabase::removeDatabase(connectionName);       delete help;   });   help->run();例子:7 m0 A3 ]( x: ?+ y0 ^
for (int i = 0; i 我也有同样的错误。/ ]7 q! ^- W2 X, B7 U- `
                                                               
* W8 i5 B' v3 D+ ~" }! R' z    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则