我想问一下,Adoconneciton.destory,或Adoconnection.free.对Adocnn做了什么?
在进行了这两个操作后,
我怎么样才能恢复Adocnn!

解决方案 »

  1.   

    释放了,再用就要重新Create一个新的实例
    干吗这么做,放着备用不就行了
      

  2.   

    Free和Destroy方法是一样的
    Free调用的Destroy方法
    释放之后需要重新创建实例,如果没必要的话不需要释放
      

  3.   

    1、相同之处:Adoconneciton.destory或Adoconnection.free两个都是释放Adoconneciton实例的;
    2、不同之处:如果Adoconneciton实例不存在时调用Destory会报错;而Free则不会报错,Free是对Destory进行了包装,如果实例对象为空,则不做操作,如不为空则释放。3、执行上面2个都是释放了实例,如果想恢复的话则需要重新创建。
      var
        Adocnn: Adoconneciton;
      begin
        Adocnn := TAdoconneciton.Create(Self);
        Adocdn.ConnectionString := 'XXXXXXX';
      end;
      

  4.   

    Adoconneciton释放他干什么,你要是真的需要,释放挂链他的Tadoquery\Tadotable行了
      

  5.   

    除非你的adocnn是动态生成的吧.
    即在一个进程里包括生成和自灭
      

  6.   

    删掉了怎么恢复?如果你想用的话就不要删,把连接断开就行了。Adoconneciton->Connected = false;
    用的时候再连接 Adoconneciton->Connected = true;
      

  7.   

    这样子不行的,我用ODBc连接的Sybase 数据库,然后用Adocnn连接ODBC,就算Adoconneciton->Connected = false;之后,数据库文件还是无法删除!destory或free之后,就可以了!
    我现在用的就是动态穿件ADocnn,我就是想问一下有没有更好的办法啊?
    呵呵,谢谢各位大侠!