定义两个数据集,
TClientDataSet与TQuery,
qry.SQL.Text     := 'select DM,MC,PY,WB from ' + DictName ;
如何将qry的数据集赋给TClientDataSet?

解决方案 »

  1.   


      ClientDataSet1.XMLData 
      Qry.save 到XML中去.  这样试下
      

  2.   

    为什么不直接用TClientDataSet?
    cds.commandtext:= 'select DM,MC,PY,WB from ' + DictName ; 
      

  3.   

    有两种方法,一种是加一个TDataSetProvider,TDataSetProvider连你的query,然后TClientDataSet连你的TDataSetProvider
      另一种自己写代码添加到TClientDataSet里,先一个一个按query的字段给TClientDataSet创建字段,比如:
     var
       NewField:TFieldDef;
    begin
       NewField:=cds.FieldDefs.AddFieldDef;
       NewField.Name:='字段名';
       NewField.DataType:=ftInteger;//数据类型
       NewField.Size:=4;//长度
       //....
       加完字段后调CreateDataSet生成数据集:
       cds.CreateDataSet;
      接着,象正常添加数据一个,一条一条append..post进去就OK了。可以参考这里:http://hi.baidu.com/0xcea4/blog/item/efda40ae580433f2fbed508a.html
    end;