我得到了一个错误加载器-606,这意味着:
SQL*Loader控件文件中的INTO表子句中指定的同义词通过数据库链接指定远程对象。在INTO table子句中只能指定现有本地表的同义词。
有没有方法可以使用SQL*Loader插入远程表?
发布于 2009-10-08 10:37:05
因为您在10g上,所以可以使用外部表而不是SQL。
设置外部表很容易。了解更多信息。
要让外部表获取一个新文件(您可能需要这样做,因为您有一个重复的过程),请执行以下操作:
alter table your_ext_table_name location ('<newfile.name>')
/然后你就可以这样做:
insert into whatever_table@remote_db
select * from your_ext_table_name
/这避免了两个大量的DML。外部表不如优化良好的SQL*Loader进程快,但与网络流量税(在您的场景中这是不可避免的)相比,这将是微不足道的。
发布于 2009-10-08 08:25:51
create table temp_table as select * from remote_table@remote_db where 1 = 2;
load using sql*loader into temp_table;
insert into remote_table@remote_db select * from temp_table;发布于 2009-10-08 09:50:20
在有表的服务器上运行?
一定是个理由,但这对我来说是最简单的。
https://stackoverflow.com/questions/1536253
复制相似问题