现在有两个Access数据库A和B,现在我想把A库里N个表导到B表中,说明:A库和B库里的所有表的结构都一样,我用dataset的clone,克隆A库中的表color,我改clone后的数据再保存(本意是要保存所有数据到B库中表color里),却保还是保存到A库中的color表中. 用ADOConnection1,ADOConnection2连接A库和B库 
两ADOQuery1,ADOQuery2分别连接ADOConnection1(A库),ADOConnection2(B库) 
ADOQuery2.clone(ADOQuery1); 此时ADOQuery2已有ADOQuery1的数据,修改值却还是保存到A库中,但我ADOQuery2连接的是ADOConnection(连接B库)   ADOConnection2.BeginTrans; 
  try 
    ADOQuery2.Post; 
    ADOQuery2.UpdateBatch(arAll); 
    ADOConnection2.CommitTrans; 
  except 
    ADOConnection2.RollbackTrans; 
  end; 还是保存到了A库中..  为什么??? 

解决方案 »

  1.   

    ADOQuery2.clone(ADOQuery1);这里的问题~~~
      

  2.   

    select * into A.表 from 表 in '另一个数据库的路径'
      

  3.   

      qryOld.SQL.Clear;
      qryOld.SQL.Add('select YSid,YSname from IYScolor ');
      qryOld.ExecSQL;
      qryOld.Open;  qryNew.SQL.Clear;
      qryNew.SQL.Add(SQL_IYScolor);
      qryNew.Open;  qryNew.Clone(qryOld,ltUnspecified);
      qryNew.Clone(qryOld);  if not(qryNew.State in [dsEdit, dsInsert]) then qryNew.Edit;
      conNew.BeginTrans;
      try
        qryNew.Post;
        qryNew.UpdateBatch(arAll);
        conNew.CommitTrans;
      except
        conNew.RollbackTrans;
      end;
      

  4.   

    select into 表A from 表B 可以吧
      

  5.   

    Clone可以修改,保存到克隆的数据表,但不能保存到另外一个数据库中的改方法吧