ITPub博客

首页 > 数据库 > 数据库开发技术 > ado 连接的问题

ado 连接的问题

原创 数据库开发技术 作者:xlhl77 时间:2006-08-15 10:23:48 0 删除 编辑

环境:vc6.0 mdac2.8 ;

问题:在成功建立连接后,如果连接由于网络故障或者数据库当机断开,如何保证能够在程序中判断并自动重新连接?


这个问题在网上有很多人问,一直没有一个明确的答案。我测试了一下,总算找到一个基本可行的方法。


_ConnectionPtr m_pConnection;

m_pConnection.CreateInstance( __uuidof(Connection) );

m_pConnection->Open(...);

if (执行sql或者打开recordset失败)

{

if (m_pConnection->GetState() != adStateClosed)

m_pConnection->Close();

//下面的语句是重点!要把连接占用的资源彻底释放掉,否则再次连接的时候,不管是什么情况,都会正确返回,实际上根本无法连接!Connection的状态是adStateOpen! 执行任何语句都不会成功。

m_pConnection.Release();

::CoUninitialize();

::CoInitialize(NULL);

m_pConnection.CreateInstance( __uuidof(Connection) );

//到这里为止上面的代码一个都不能少。

//重新连接

m_pConnection->Open(...);

}

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/752573/viewspace-856517/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 网线制作
请登录后发表评论 登录
全部评论
  • 博文量
    2
  • 访问量
    149647

最新文章