我想把adotable的数据备份下来,操作如下
var
   data:_recordset
begin
   data:=adotable1.recordset
   adotable1...一系列操作
   要是我想恢复adotable1中的数据
  adotable1:=data
end;但是,只要adotable1中的数据一改,data也跟着变,郁闷,请问有什么方法,data不跟着变吗。
请照我的说的问题回答,不要说用别的方法来实现如上。

解决方案 »

  1.   

    data 只是一个指针而已
    要想不变的话,复制一下吧!
    重载一下recordset.Assign
      

  2.   

    如果只是简单的放弃修改可以,adotable1.CancelUpdates
    如果你坚持复制的话你可以试试data:=adotable1.Recordset.Clone().这个是ADO的方法,我不知正确不正确,你自己测试.
      

  3.   

    data:=adotable1.recordset
    --data 是adotable1.recordset的一个引用,两者指向同一块内存,
    所以adotable1.recordset改变,data也会变使用Assign 或 AssignTo可以复制一个相同状态的对象