我使用TClientDataSet关联了一个表,表参数assignno,
第一次使用时正常(使用多次):
    ClientDataSet.Close;
    ClientDataSet.Params.ParamByName('AssignNo').AsInteger := AssignNo;
    ClientDataSet.Open;但是,当关闭连接,重连后,再使用就不正常了,这是为什么?
是不是需要怎么样更新一下?有时候又好的,有时不正常,纳闷啊...

解决方案 »

  1.   

    我一般都是用完    
        ClientDataSet.Close; 
        ClientDataSet.Params.ParamByName('AssignNo').AsInteger := AssignNo; 
        ClientDataSet.Open; 
    最后都ClientDataSet.Close; 在断开连接时只断开
    SocketConnection.close;现在在断开时也加上ClientDataSet.Close; 
    再断开SocketConnection.close;
    好像又正常了;到底ClientDataSet中的数据是怎么存放的?有效时限是那段时间?谁能帮忙解释下
      

  2.   

    不好意思,忘了说不正常的现象了,就是
    断开后,重连
        ClientDataSet.Close; 
        ClientDataSet.Params.ParamByName('AssignNo').AsInteger := AssignNo; 
        ClientDataSet.Open;
    经过这个没起作用,还是保留上次的结果在那里
      

  3.   

    clientdataset的数据当然存在 clientdataset.data clientdataset.delta中存储 需要更新的数据