在旧的 IBX 组件中有一个名为“TestConnected”的函数:
if not DB.TestConnected then
Showmessage('Database connection dropped!');
我正在Unified InterBase component下寻找类似的命令。
检查if uDB.Connected = True
...并不能提供真实的证据。
在执行我想测试的 SQL 命令之前,如果与数据库的连接仍然正常,那么我:
- 如果连接不可用,则不需要执行事务
- 可以告知用户问题
- 尝试重新连接等...
为什么我需要这个?我正在创建一个后台线程类来执行所有超时的 SQL 命令。
只有 Firebird 4.0+ 能够处理超时功能。2.5 版仅支持 LockTimeout,因此如果运行时间过长,我不得不在可以停止的辅助线程中启动所有数据库操作。