将dmp数据导入到另一个表

偶然看到有人问, 如何将A表导出的dmp文件导入到B表中, 初一看, 的确好象是不行, 其实还是有办法的. 先来建一个测试环境吧!

SQL> create table t_a as select * from tab;

Table created.

SQL> create table t_b as select * from tab where rownum < 1;

Table created.

任务是将T_A表导出的记录导入到T_B表中, 所以我在SYSTEM用户中建了一个同义词.

SQL> create synonym t_a for mydul.t_b;

Synonym created.

接下来的导出和导入命令, 你自已去试试吧.

exp mydul/mydul file=t_a.dmp tables=t_a
imp system/oracle file=t_a.dmp fromuser=mydul touser=system ignore=y

验证一下数据有没有导入进去.

SQL> select count(*) from t_b;

COUNT(*)
----------
17

SQL> select count(*) from t_a;

COUNT(*)
----------
17

Oracle的imp导入数据时, 也只不过是运行Insert语句而已, 向同义词和向表, 它分得清吗?

阅读更多
文章标签: SQL Oracle .net HTML
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭