關於oracle imp 匯入避開若干表

netwant發表於2012-08-03
oracle imp[@more@]

imp 匯入時忽略某些表的辦法
演示過程

1、建立新使用者
create user sec identified by sec;
grant dba to sec;
conn sec/sec
create table t1 (x int);
create table t2 (x int);
create table t3 (x int);
insert into t1 values(1);
insert into t2 values(2);
insert into t3 values(3);
commit;
exp sec/sec file=sec.dmp
drop table t1 purge;
drop table t2 purge;
drop table t3 purge;

create table t1 (x int);

imp sec/sec file=sec.dmp full=y
t1表沒有被匯入資料

如果選用引數 ignore=y 那麼t1表的資料會被匯入。
ignore引數預設是n。
這顯然與我們的期望相違背,我們可以建立其他以t1命名的資料庫物件來規避上述問題。
如建立一個t1 的檢視
create view t1 as select * from dual;
然後再匯入就可以避免匯入t1資料了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/309902/viewspace-1059073/,如需轉載,請註明出處,否則將追究法律責任。

相關文章