我有一个包含 3 亿条记录的远程表,我需要将所有数据插入本地数据库的表中。
我尝试使用
- BULK COLLECT子句。
- 合并子句。
- 平行插入
所有选项都需要太多时间。
我可以使用哪些其他选项以有效的方式插入所有记录?
我在远程和本地数据库中使用 Oracle 11g
我有一个包含 3 亿条记录的远程表,我需要将所有数据插入本地数据库的表中。
我尝试使用
所有选项都需要太多时间。
我可以使用哪些其他选项以有效的方式插入所有记录?
我在远程和本地数据库中使用 Oracle 11g
另一种选择是转储表并在本地加载它,然后插入数据。通常我在批量插入上使用带有绑定变量的游标循环。但是批量收集很有趣,您可以使用它。
expdp scott/tiger@db10g tables=EMP,DEPT directory=TEST_DIR dumpfile=EMP_DEPT.dmp logfile=expdpEMP_DEPT.log
impdp scott/tiger@db10g tables=EMP,DEPT directory=TEST_DIR dumpfile=EMP_DEPT.dmp logfile=impdpEMP_DEPT.log