今天要把远程数据库上的数据导入到本地数据库,于是总结出以下几种方法可供参考:
1.使用exp导出命令,导出指定的数据库表以及数据,然后导入到本地数据库中。(导入导出可参见前面的文章)
2.建立dblink,建立一个存储过程,循环的写入本地表中。
具体实现步骤:
>创建dblink
create database link EBS_TO_B2B.US.ORACLE.COM
connect to HANDOA(用户名) identified by HANDOA(密码)
using '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.123.1.66)(PORT = 1521)) (CONNECT_DATA = (SID = fme)) )'(连接字符串);
检测创建的dblink是否好使,
select * from fnd_territories_tl@b2b_to_ebs;
>创建存储过程:
begin
for c in (select territory_code,
language,
territory_short_name,
created_by,
creation_date,
last_updated_by,
last_update_date,
last_update_login,
description,
source_lang
from fnd_territories_tl@b2b_to_ebs) loop
insert into bf_country_tl(COUNTRY_code, language, country_short_name,description,source_lang,CREATED_BY, CREATION_DATE,last_updated_by, last_update_date,
last_update_login)
values(c.territory_code,c.language,c.territory_short_name,c.description,c.source_lang,c.created_by,
c.creation_date,c.last_updated_by,c.last_update_date,c.last_update_login);
end loop;
end;
实现了远程数据库fnd_territories_tl表的数据到bf_country_tl数据的传送。