使用db.isOpen()检查数据库连接
Checking database connection using db.isOpen()
我尝试使用:
if (!db.isOpen()) {
db.open();
}
检查我的数据库连接,但它不会重新连接到我的数据库…:(打开我的程序(20-30秒?)后,我的连接将随机中断。但是,如果我忘记了if语句并执行db.open();
,它就可以工作了。我确实有#include <QSqlDatabase>
。
我认为isOpen
不会检查连接是否仍然有效。如果连接已成功打开,但尚未关闭,则返回true。您应该使用一个简单的SQL请求(例如SELECT 1
)来检查连接。此外,如果您定期执行此请求,连接将保持活动状态。
另请参阅检测QSqlDatabase断开连接。
相关文章:
- C++应用程序 MySQL odbc 数据库连接错误:在引发"otl_tmpl_exception<>"实例后终止调用
- 如何在多个线程中创建 QSql数据库连接时防止名称冲突
- 数据库连接并将数据从C ++程序保存到MySQL
- 在 C++ 中获取数据库连接
- Firebase C++ Windows 上的实时数据库连接丢失
- 我不能使用 mysql 数据库连接同时使用插入和选择.C++
- C++ Qt SQL lite 数据库连接问题
- C++ 程序中的数据库连接检查
- 打开与 Qt/C++ 的数据库连接
- 如何修复数据库连接的C 程序运行时间错误(0xc0000005)
- 如何检查数据库字段是否为空
- C 在Linux Ubuntu上检查Internet连接
- 使用libpq组织PostgreSQL数据库连接参数
- 从C++代码检查互联网连接
- 如何检查数据库是否存在
- Qt 中的数据库连接池
- 如何在C API中检查MySql连接是否处于活动状态
- Qt-同时处理多个数据库连接
- 使用QT C 为Sevaral表单创建常见的数据库连接
- 使用db.isOpen()检查数据库连接