两台数据库服务器
上装有Oracle
上装有Oraclei
现要将上的数据导入到上的数据库中去不用imp和exp如何做?
现用PowerDesigner导出上的基表结构包括视图函数触发器序列等
Tools > Export User Objects > Export
将导出的脚本在的sqlplus中运行建立基表结构
vi $ORACLE_HOME/network/admin/tnsnamesora
配置上的tnsnamesora文件使上的sqlplus能够链接到上的Oracle数据库假设链接到的TNS name是ctgpc加上以下代码
ctgpc =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = ))
)
(CONNECT_DATA =
(SID = ORCL)
)
)
来上运行sqlplus建立数据库链
create database link from
//from:DB链名使用时用它名字可任取
connect to ctpgc identified by comdev
//ctgpc和comdev是远程数据库的用户名和密码
using ctpgc
//连接串即在上tnsnamesora中配置的TNS name
/
在的sqlplus中键入
select insert into ||tname|| select * from||tname||@from; from tab;
将屏幕结果copy下列放到Ultraedit中备用整理成纯脚本类似如下所示
insert into CODE_TABLES select * from CODE_tables@from;
将上面生成的脚本语句粘贴到上的sqlplus中去执行就可以插入数据了
上面的脚本中可能包含有视图的数据插入语句这时不用视图的语句只需用另外的脚本导入视图结构即可因为它是视图不用插入数据
关于数据库链的几点说明
)使用数据库链操作时应先建立数据库链
)使用时应使用DB链名而不是连接串
)使用DB链名时前面应加上@符号