Thursday, June 21, 2007

Triggers creation errors during imp

User found that some triggers are missing in a database just imp from production database exp dump. I looked at the imp log, identified the problem, and sent the following message:

 

======================

During imp, the public synonyms have been dropped. So dev triggers without qualified names to gen tables did not get created. I think it is probably better to re-create all triggers after refresh.

 

For example:

(a) Without qualified table name -- failed

IMP-00017: following statement failed with ORACLE error 942:

 "CREATE TRIGGER "DEV".ft_fee"

 " AFTER"

 "  INSERT OR DELETE OR UPDATE"

 " ON ft_fee"

 "REFERENCING NEW AS NEW OLD AS OLD"

 " FOR EACH ROW"

 ""

 "DECLARE"

 "    ctable_name                    CONSTANT ht_history_log.table_name%TYPE "

 ":= 'FT_FEE';"

 "    ceffective_based_on_date_code  CONSTANT ht_history_log.column_name%TYPE"

 " := 'EFFECTIVE_BASED_ON_DATE_CODE';"

 "    ccharge_based_on_date_code     CONSTANT ht_history_log.column_name%TYPE"

 " := 'CHARGE_BASED_ON_DATE_CODE';"

 "BEGIN"

 "    IF DBMS_REPUTIL.from_remote THEN"

 

IMP-00003: ORACLE error 942 encountered

ORA-00942: table or view does not exist

 

(b) With qualified name -- OK

 

IMP-00041: Warning: object created with compilation warnings

 "CREATE TRIGGER "DEV".ft_fee_effective_period"

 " AFTER"

 "  INSERT OR DELETE OR UPDATE"

 " ON gen.ft_fee_effective_period"

 "REFERENCING NEW AS NEW OLD AS OLD"

 " FOR EACH ROW"

 

=================================

 

No comments: