觸發器控制

在目標庫上建立數據泵目錄


create directory dump_dir as '/oracle/ppp';
grant read,write on directory dump_dir to user;


在源庫上導出數據:
expdp system/oracle directory=dump_dir dumpfile=user.dmp schemas=user logfile=user.log


導出表結構:
impdp system/oracle directory=dump_dir dumpfile=user.dmp sqlfile=user.sql logfile=userimp.log


在目標庫上建立表
SQL>@/oracle/ppp/user.sql


導入數據前關閉約束和觸發器:
SQL>set heading off
SQL>select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints;
SQL>alter table table_name disable constraint constraint_name;


SQL>select 'alter trigger '||trigger_name||' disable;' from user_triggers;
SQL>alter trigger trigger_name disable;


導入數據:
export ORACLE_SID=SID
$impdp system/oracle directory=dump_dir dumpfile=javaoanew.dmp table_exists_action=append logfile=javaoaimpnew.log


導入數據後打開約束和觸發器:
SQL>set heading off
SQL>select 'alter table '||table_name||' enable novalidate constraint '||constraint_name||';' from user_constraints;
SQL>alter table table_name enable novalidate constraint constraint_name;


SQL>select 'alter trigger '||trigger_name||' enable;' from user_triggers;
SQL>alter trigger trigger_name enable;


連接應用測試,一切OK.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章