今天无意中想到一个问题,如果表上存在触发器,那么IMP和IMPDP导入的时候,是否会对导入结果造成影响。
下面进行简单的测试:
首先看一下触发器对IMP导入结果的影响。
SQL> SHOW USER
USER 为 "ADMIN"
SQL> CREATE TABLE TEST(ID INT,NAME VARCHAR2(30));
表已创建。
SQL> INSERT INTO TEST VALUES(1,'YANSHOUPENG');
已创建 1 行。
SQL> COMMIT;
提交完成。
SQL> SELECT * FROM TEST;
ID NAME
---------- ------------------------------
1 YANSHOUPENG
SQL> host exp admin/admin file=test.dmp tables=test
Export: Release 10.2.0.1.0 - Production on 星期三 5月 11 10:11:27 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
即将导出指定的表通过常规路径...
. . 正在导出表 TEST导出了 1 行
成功终止导出, 没有出现警告。
首先创建一张表,并且插入一条记录,将记录导出。
下面创建一个触发器,每次插入的时候将NAME字段自动加上'[huateng] '。
SQL> CREATE OR REPLACE TRIGGER EXP_TRIGGER
2 BEFORE INSERT ON TEST
3 FOR EACH ROW
4 BEGIN
5 :NEW.NAME:=:NEW.NAME||&#