首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

ADO数据库断开后自动重连,该如何处理

2013-01-07 
ADO数据库断开后自动重连问题1:如果使用ADO的TADOConnection,TADOQuery,TADOStoredProc等控件的话.当数据

ADO数据库断开后自动重连
问题1:
如果使用ADO的TADOConnection,TADOQuery,TADOStoredProc等控件的话.
当数据库断开(如网络等原因).再次Open后,执行SQL,出现异常: 未连接到数据库。
这说明: 已经连上数据库对象m_Database在断开连接,重新Open时,不会真正从新打开连接。有什么好方法解决吗?


问题2:
如果动态创建CADODatabase的话.就会出现我上次的问题,
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")后编译出错.
内容为:
Ambiguitu between 'ConnectionEventsVt' and 'Adoint::ConnectionEventsVt',
还有写相关的如RecordsetEventsVt等也是同样的错误.
好象是import后冲突了.请问什么办法解决?

大虾指点下把.很急啊.
分不够可以再加!




[解决办法]
楼主,解决这个问题有个很蠢的方法

开个定时器,没5秒连接数据库,执行getdate()函数,如果失败,则说明连接失败,则把数据库连接关闭后再打开,实现重新连接的目的。。。。。
[解决办法]
问题1,用捕获异常的办法,用代码重新连接数据库
问题2,等高手
[解决办法]
“重新Open时,不会真正从新打开连接。”
断开后,等3秒以上,再打开, 就可以打开了

热点排行