我的程序是cs结构,用到一个静态的ADOConnection,运行环境不是特别稳定,经常在很短暂的时间内断开连接,这就导致程序的connection断开连接,我想在断开连接后重新连接到数据库,可是connection重新连接成功后,用到它的查询仍然提示连不上数据库,请问是为什么?用什么好的方法能解决这个重新连接的问题呢?请各位指教。

解决方案 »

  1.   

    不可能吧 你用adoconnection这个控件连接不行吗~~~
      

  2.   

    用adoconnection动态的连接试试看~``
      

  3.   

    不会吧...程序里看看...静态设定就行了嘛,动态的话可以用UDL,方便
      

  4.   

    可是connection重新连接成功后,用到它的查询仍然提示连不上数据库
    /////////////////////
    有这种事?用动态连接
      

  5.   

    用动态连接看看
    adoconnection.close;
    adoconnection.connectionstring:='Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Data Source=(local)';
    adoconnection.connected:=true;
      

  6.   

    之前静态的adoConnection断开了,我用下面的语句重新连接:
    adoConnection.close;
    adoConnection.connectstring:=fConnsql;
    adoConnection.open;
    adoConnection.Connected := true;再接着用下面的语句执行查询,仍然报连接不上数据库的问题
    rsQuery := tAdoQuery.Create(nil);
    rsQuery.connection := adoConnection;
    rsQuery.close;
    rsQuery.sql.add('select * from s_user');
    rsQuery.open;
    我的数据库是oracle的,sqlserver还没发现