把两边的表打开后用
insert into ..表1.. select .... from 表2
不就行了吗?

解决方案 »

  1.   

    用两个Query,查找出需要的数据然后在对应的字段里增加记录
    如:
    Query1.sql.text:='select * from ... where ....'
    Query1.open;//foxpro
    while not Query1.eof do
    begin  
       Query2.append;//Query2指向SYSBASE
       query2.fieldbyname('').asstring:=Query1.fieldbyname('').asstring
       .....
       query1.next;end;
      

  2.   

    如果是异构数据库得放两个TDatabase。
      

  3.   

    有两种方法解决这个问题,一般用来大规模的数据迁移。
    首先在ODBC定义好这两个数据源,一个对应sysbase,一个对应fox1、使用delphi的Datapump工具实现。
    2、使用PB的data pipeline工具实现。  如果使用过程有何问题,可以联系[email protected]
      

  4.   

    //参考
    TADOQuery.SaveToFile()
    TADOQuery.LoadFromFile()//不要忘记还有这种写法!
    Table1.Edit;
    Table1['field1;field2;field3'] := Table2['field1;field2;field3'];
      

  5.   

    同意使用Query查询对数据库进行转换
    虽然使用delphi的Datapump工具实现是比较简单,但不符合编程的思想,所以我觉得还是用Query应该好点,因为用户不必知道数据库到底是怎么构成的,就可以对数据库操作
      

  6.   

    可能BATCHMOVE更保险,我这样认为
      

  7.   

    我也觉得用BatchMove最好,因为速度非常快,在就是用ADO的Clone也行。
      

  8.   

    我用batchmove速度较慢,我还是动态生成sql语句实现。这样比较快,谢谢各位的回复。发分了