0
我试着使用:检查使用db.isOpen()数据库连接
if (!db.isOpen()) {
db.open();
}
检查我的数据库连接,但它不会重新连接到我的数据库... :(我连接将开后随机掉落我程序(20-30seconds?)。但是,如果我只是忘了if语句,做db.open();
它的作品。我确实有#include <QSqlDatabase>
。
我试着使用:检查使用db.isOpen()数据库连接
if (!db.isOpen()) {
db.open();
}
检查我的数据库连接,但它不会重新连接到我的数据库... :(我连接将开后随机掉落我程序(20-30seconds?)。但是,如果我只是忘了if语句,做db.open();
它的作品。我确实有#include <QSqlDatabase>
。
我觉得isOpen
不检查连接是否还活着。它只是返回true如果连接成功打开并且尚未关闭,则应使用简单的SQL请求检查连接(例如SELECT 1
)。也可能是如果您定期执行此请求,连接将保持活动状态。请参阅Detecting QSqlDatabase disconnections。