oracle数据库批量数据导入导出问题

0
oracle数据库1下有用户A,B,当前用户为A,想导出用户B名下的所有表,这些表A只有select权限

然后将数据导入oracle数据库2的C用户下。请问该怎么操作?
已邀请:
1

悲伤穿成佛珠 2013-07-16 回答

这个问题已经解决,我的解决方案是这样的。
    []建立数据库2到数据库1的dblink[/][]在数据库2中C用户下,写批量建表的脚本:[/]
select 'create table ' || table_name || ' as select * from <A用户>.' ||
table_name || '@<dblink名称>;'
from all_tables@<dblink名称>
where owner = '用户B'
AND table_name like or in ('<需要的表>')

得到建表语句:
create table <表1> as select * from <A用户>.<表1>@<dblink名称>;
create table <表2> as select * from <A用户>.<表2>@<dblink名称>;
create table <表3> as select * from <A用户>.<表3>@<dblink名称>;
create table <表4> as select * from <A用户>.<表4>@<dblink名称>;
。。。。。。。。

3.全部执行建表语句。

这样,数据就从数据库1的B用户名下,到了数据库2的C用户名下。
0

梁勇 - 天道酬勤、上善若水。爱好商业智能 2013-07-16 回答

在DOS里面导出B用户对于的数据库,然后使用A用户在导入
导出用户B里面数据库: exp b/密码@tianshan file=C:\tianshan.dmp owner=b
导入用户A里面数据库: imp a/密码@tianshan file=C:\tianshan.dmp full=y

要回复问题请先登录注册