Oracle7 Server Messages
04070-04099: Triggers
This section lists messages generated when triggers are accessed.
ORA-04070 invalid trigger name
Cause: | An invalid trigger name was specified. | |
Action: | Check that the trigger name is not a reserved keyword. | |
ORA-04071 missing BEFORE or AFTER keyword
Cause: | The trigger statement is missing the BEFORE/AFTER clause. | |
Action: | Specify either BEFORE or AFTER. | |
ORA-04072 invalid trigger type
Cause: | An invalid trigger type was given. | |
Action: | Specify either INSERT, UPDATE, or DELETE as the trigger type. | |
ORA-04073 column list not valid for this trigger type
Cause: | A column list was specified for a trigger type other than UPDATE. | |
Action: | Remove the column list from the trigger. | |
ORA-04074 invalid REFERENCING name
Cause: | An invalid name was given in the REFERENCING clause. | |
Action: | Check that the REFERENCING name is not a reserved word. | |
ORA-04075 invalid trigger action
Cause: | A statement was given for the trigger action. | |
Action: | Specify another trigger action that is not a statement. | |
ORA-04076 invalid NEW or OLD specification
Cause: | An invalid NEW or OLD specification was given for a column. | |
Action: | Respecify the column using a correct NEW or OLD specification. | |
ORA-04077 WHEN clause cannot be used with table level triggers
Cause: | The WHEN clause can only be specified for row-level triggers. | |
Action: | Remove the WHEN clause or specify it for each row. | |
ORA-04078 OLD and NEW values cannot be identical
Cause: | The REFERENCING clause specifies identical values for NEW and OLD. | |
Action: | Specify the REFERENCING clause again with a different value for either NEW or OLD. | |
ORA-04079 invalid trigger specification
Cause: | The CREATE TRIGGER statement is invalid. | |
ORA-04080 trigger name does not exist
Cause: | The trigger name specified is invalid, or the trigger does not exist. | |
Action: | Check the trigger name. | |
ORA-04081 trigger name already exists
Cause: | The trigger name or type already exists. | |
Action: | Use a different trigger name or drop the trigger that is of the same type. | |
ORA-04082 NEW or OLD references not allowed in table level triggers
Cause: | The trigger is accessing NEW or OLD values in a table trigger. | |
Action: | Remove any new or old references. | |
ORA-04083 invalid trigger variable name
Cause: | The variable referenced in the trigger body is invalid. | |
ORA-04084 cannot change trigger NEW values in after row triggers
Cause: | New trigger variables can only be changed in before-row triggers. | |
Action: | Change trigger type or remove the variable reference. | |
ORA-04085 cannot change the value of an OLD reference variable
Cause: | OLD values can only be read and not changed. | |
Action: | Do not attempt to change an OLD variable. | |
ORA-04086 trigger description too long, move comments into triggering code
Cause: | The trigger description is limited to 2000 characters, for dictionary storage reasons. The description does not include the text of the "when" clause or the text of the PL/SQL code executed for the trigger. | |
Action: | If the trigger description contains a large comment, move that comment into the PL/SQL code for the trigger. | |
ORA-04087 cannot change the value of ROWID reference variable
Cause: | ROWIDs can only be read and not changed. | |
Action: | Do not attempt to change a ROWID value. | |
ORA-04088 error during execution of trigger name.name
Cause: | A runtime error occurred during execution of a trigger. | |
Action: | Check the triggers that were involved in the operation. | |
ORA-04089 cannot create triggers on objects owned by SYS
Cause: | An attempt was made to create a trigger on an object owned by SYS. | |
Action: | Do not create triggers on objects owned by SYS. | |
ORA-04090 name specifies same table, event and trigger time as name
Cause: | The named trigger has a duplicate event and trigger time as another trigger. | |
Action: | Combine both triggers into one trigger. | |
ORA-04091 table name is mutating, trigger/function may not see it
Cause: | A trigger or a user-defined PL/SQL function that is referenced in the statement attempted to query or modify a table that was in the middle of being modified by the statement that fired the trigger. | |
Action: | Rewrite the trigger or function so it does not read the table. | |
ORA-04092 cannot COMMIT or ROLLBACK in a trigger
Cause: | A trigger attempted to COMMIT or ROLLBACK. This is not permitted. | |
Action: | Rewrite the trigger so that COMMIT or ROLLBACK statements are not used. | |
ORA-04093 references to columns of type LONG are not allowed in triggers
Cause: | A trigger attempted to reference a LONG column in the triggering table. | |
Action: | Do not reference the LONG column. | |
ORA-04094 table name is constraining, trigger may not modify it
Cause: | A trigger attempted to modify a table that was constraining for some referential constraint of a parent SQL statement. | |
Action: | Rewrite the trigger so that it does not modify that table. | |
ORA-04095 trigger name already exists on another table, cannot replace
Cause: | An attempt was made to replace a trigger that exists on another table. | |
Action: | Re-create the trigger on the other table using the CREATE OR REPLACE TRIGGER statement. | |
ORA-04096 trigger name has a WHEN clause that is larger than 2K
Cause: | A trigger's WHEN clause is limited to 2K for dictionary storage reasons. | |
Action: | Use a smaller WHEN clause. Note, the trigger body could perform the same limiting action as the WHEN clause. | |
ORA-04097 DDL conflict while trying to drop or alter a trigger
Cause: | An attempt was made to concurrently perform two DDL operations on a trigger or trigger table. | |
Action: | Investigate the new state of the trigger and retry the DDL operation, if still appropriate. | |
ORA-04098 trigger name is invalid and failed re-validation
Cause: | A trigger was attempted to be retrieved for execution and was found to be invalid. This also means that compilation/authorization failed for the trigger. | |
Action: | The options are to resolve the compilation/authorization errors, disable the trigger, or drop the trigger. | |
For more information about enabling and disabling triggers, see the index entries on "enabling, triggers," "disabling, triggers," and "DROP TRIGGER command" in Oracle7 Server SQL Reference.
ORA-04099 trigger name is valid but not stored in compiled form
Cause: | A trigger was attempted to be retrieved for execution and was found to be valid, but not stored. This may mean the an upgrade was done improperly from a non-stored trigger release. | |
Action: | Execute the ALTER <triggername> COMPILE command to compile the trigger. The trigger will then be in stored form. Also, you may want to review that a proper upgrade was done. | |