adoconnection连接sqlserver数据库,如果由于种种原因连接失败或者一段时间断开连接了,再去连接的时候就再也连不上了,只有把程序关掉重启才可以。
我是这样重连的:
try
adoconnection1.connected:=false;
adoconnection1.connected:=true;
except
end;有错误吗?

解决方案 »

  1.   

    你直接用
    adoconnection1.open;
    就可以了。
      

  2.   

    adoconnection连接sqlserver数据库,如果由于种种原因连接失败或者一段时间断开连接了,再去连接的时候就再也连不上了,只有把程序关掉重启才可以。
    我是这样重连的:
    try
    adoconnection1.connected:=false;
    adoconnection1.connected:=true;
    except
    end;有错误吗?
      

  3.   

    你语句没问题,ADOConnectinon应该已经连上了的,我觉得问题是你那些使用该ADOConnection做链接的ADOQuery们没重新打开……
    try
      adoconnection1.connected:=false;
      adoconnection1.connected:=true;
      ADOQuery1.close;
      ADOQuery1.Open;
      ……
    except
    end;
      

  4.   

    重连方式没问题,关键是你如何判断数据库已经断开
    用connection的conected属性是不行的
    我前一阵也实现了自动重连,是通过connection的OnExecuteComplete实现的,执行sql的时候会触发这个事件
    判断是否出错,再判断错误类型