Oracle数据库。大约几百万条数据
数据库结构有很大的差别。表名、字段全部不一样我现在做法是每次用DataReader读入一条记录,然后处理一下,insert到新数据库有没有更好的方法?麻烦说详细点谢谢谢谢。鞠躬ing

解决方案 »

  1.   

    to 我现在做法是每次用DataReader读入一条记录,然后处理一下,insert到新数据库
    有没有更好的方法?麻烦说详细点由于需要处理,按照你的思路已经是最好的方法。
    如果是放到datatable,来同一处理,再用DataAdapter来进行插入操作,那么数据量多了,效果也是不明显。你可以参看
    http://blog.csdn.net/knight94/archive/2006/05/01/704316.aspx
    http://blog.csdn.net/Knight94/archive/2006/05/13/726953.aspx
      

  2.   

    谢谢Knight94(愚翁)
    这就去看
    再次谢谢大家
      

  3.   

    对哦,存储过程可以跨数据库。Knight94(愚翁) ,问一下,如果的效率会怎么样?先在原数据库中建立一个和新数据表结构一样的表table1,然后用储存过程对同数据库的新表table1进行写入操作,完了后用数据导入导出把新table1中的数据导入到新数据库中表中。
      

  4.   

    to kbxj406(羽儿)如果记录少了的话,放到table中操作没什么问题。但是如果记录太多,例如像lz所说的那样,几百万条,甚至更多。那么一次性放到datatable中,首先内存占用过多,不一定能完全放下所有记录,如果通过缓存来进行调入调出的话,效率是很低下的。那么对于记录集非常大,采用DataReader来进行操作;或者如果用DataTable的话,需要分批获得。
      

  5.   

    Knight94(愚翁) 大哥,我说的和你理解可能不一样我说是通过储存过程来做。
    先在原数据库中建立一个和新数据表结构一样的表table1,然后用储存过程对同数据库的新表table1进行写入操作,完了后用数据导入导出把新table1中的数据导入到新数据库中表中。
      

  6.   

    麻烦你使用DBLINK2个不同的ORACLE数据库完全可以使用DBLINK啊,就算是一个ORACLE和一个SYSBASE都能实现,设置下怔听那个文件.