我用两个ADOconnect链接两个服务器的数据库,为啥远程的那个老失败呢??

zhgwbzhd 2011-06-03 05:22:08
ADOConnection_L->Close();
ADOConnection_L->LoginPrompt = false;
ADOConnection_L->ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=pcmis;Data Source="+server_ip+";Password="+sa_pass;


ADOConnection_R->Close();
ADOConnection_R->LoginPrompt = false;
ADOConnection_R->ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=pcmis;Data Source="+server_ipr+";Password="+sa_passr;

我向党保证,如果是一个链接的话,是完全可以的。

ADOConnection_ykr_open:
try
{
if(ADOConnection_L->Connected)
ADOConnection_L->Close();

ADOConnection_L->Open();
i=0;//如果打开成功,就清0
}
catch(...)
{
ADOConnection_L->Close();
SleepEx(1000,true);//暂停1秒。;
i++;
}

if(i>0 && i<21)
goto ADOConnection_ykr_open;

if(i>20)
Write_LOG("打开本地ADO链接失败!");
else
{

i=0;

Write_LOG(ADOConnection_R->ConnectionString);

ADOConnection_ykr_openr:


try
{
if(ADOConnection_R->Connected)
ADOConnection_R->Close();

ADOConnection_R->Open();
i=0;//如果打开成功,就清0
}
catch(...)
{
ADOConnection_R->Close();
SleepEx(1000,true);//暂停1秒。;
Write_LOG("第" + IntToStr(i) +"次打开异地ADO链接失败!");
i++;
}
if(i>0 && i<21)
goto ADOConnection_ykr_openr;

if(i>20)
Write_LOG("打开异地ADO链接失败!");
................


现在就是第二个远程的这个链接失败啊。

...全文
59 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
aprile 2011-07-11
  • 打赏
  • 举报
回复
拖一个ADOConnection控件,然后在ConnectionString,builder一下,注意KeepConnection=true,对比一下你原来的方法。看情况怎么样,如果还有问题,一定是网络有问题。
cankoo 2011-06-03
  • 打赏
  • 举报
回复
ADOConnection_R->Close();
ADOConnection_R->LoginPrompt = false;
ADOConnection_R->ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=pcmis;Data Source="+server_ipr+";Password="+sa_passr;

1,316

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧