一 问题描述
用expdp导出源库时没报错,在目标库impdp导入的时候报错:
ORA-39082: 对象类型 TRIGGER:"TQMS"."KNOWLEDGE_FREQUENCY_UPDATE" 已创建, 但带有编译警告
二 问题排查
查看该触发器的定义:
select dbms_metadata.get_ddl('TRIGGER','TEST_PAPER_UPDATE') from dual;
CREATE OR REPLACE TRIGGER "TQMS"."TEST_PAPER_UPDATE"
after update of status on TEST_PAPER
for each row
WHEN (new.status = '99' and old.status='100' and old.review_status='100') begin
insert into TEST_PAPER_OL
(OL_ID,OL_OPERATETYPE,OL_OPERATEDATE,src_pk_id)
values
(TEST_PAPER_OL_SEQ.Nextval,
'D',
to_char(sysdate, 'yyyymmddhh24miss'),
:old.ID);
end;
ALTER TRIGGER "TQMS"."TEST_PAPER_UPDATE" ENABLE
发现该触发器涉及到的TEST_PAPER_OL表在目标库上是不存在的。
三 解决办法
删掉该触发器,该触发器在目标服务器上没用,因为表都不存在。