ADOQuery1.filtered:=true;
ADOQuery1.filtergroup:=fgpendingrecords;  //我要的是这里的记录。把它复制给ADOQUERY2。
ADOQuery2.Recordset := ADOQuery1.Recordset;//这样的话未修改的也复制过来了,clone好像也不能复制到。请问有什么简单有效的方法?

解决方案 »

  1.   

    克隆之后再用filtergroup,不知道可行ADOQuery2.clone(ADOQuery1); 
    ADOQuery2.filterGroup:=fgPendingRecords;
    ADOQuery2.filtered:=true;
      

  2.   

    ADOQuery2.Recordset := ADOQuery1.Recordset
    而且也不建议用clone,assigen之类的,毕竟操作的是同一张表吧,那样容易造成数据混乱,你可以讲一个数据集保存到本地文件,另一个从文件加载,操作它不会影响数据库
      

  3.   


    其实我是想试试用Adoquery来做三层客户端。想看看效果。ADOQuery2.filterGroup:=fgPendingRecords;
    ADOQuery2.filtered:=true;
    后显示的是修改后的记录,但在数据传输时会将整个数据集发入往服务器。bdmh的说法应该可行,但感觉有点繁琐了。不知道有没更好的方法。