//将记录追加到本地数据集:
      ClientDataSet1.Append;
      for i:=0 to ADOQuery1.FieldCount-1 do ClientDataSet1.Fields.Fields[i].AsVariant:=
         ADOQuery1.Fields.Fields[i].AsVariant;
      ClientDataSet1.Post;讲ADOQuery1的部分数据,插入到ClientDataSet1数据后,经过修改后如何把数据插入到数据库?
请大大们帮忙贴下有用的代码,谢谢表数据结构与ClientDataSet1结构完全相同,例如数据库表为TEST,代码该怎么写?

解决方案 »

  1.   

    如果 你的cds 连接 dsp的话 ,直接 applyupdate 就行了
    如果没有的话 ,你可以把修改的数据转成json 传到服务端 ,由服务端解析导入数据库就好了
      

  2.   


    CDS为如何连接DataSetProvider,能不能把你的QQ发一下.这个事比较着急!
      

  3.   

    ClientDataSet1.Post后面加句ClientDataSet1.ApplyUpdates(-1);  这样行不
      

  4.   

    不知道楼主的ClientDataSet1是在三层中的应用还是在两层中的应用,如果要保存,至少要连接到你要保存的目标数据库吧
      

  5.   

    如果是三层 ,记得 ClientDataSet1.RemoteServer 要赋值的
    SocketConnection : TSocketConnection;
     ClientDataSet1.RemoteServer := SocketConnection
      

  6.   

    先用ClientDataSet1查询出目标表的数据例如目标表表明为t1
    select top 0 * from t1
    然后open,使ClientDataSet1处于active状态  ADOQuery1.First;
      while not ADOQuery1.Eof do
      begin
        ClientDataSet1.Insert;
        for i := 0 to ds1.Fields.Count - 1 do
          ClientDataSet1.Fields[i].AsVariant := ADOQuery1.Fields[i].AsVariant;
        ClientDataSet1.Post;
        ADOQuery1.Next;
      end;