Oracle8 Error Messages Release 8.0.4 A58312-01 |
Library | Product | Contents | Index

## 04070-04099: Trigger Messages

This section lists messages generated when triggers are accessed. For more trigger messages, see 25000-25099: Trigger Messages on page -358.

##### 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.

Action: Refer to Oracle8 Server SQL Reference for the correct syntax of the CREATE TRIGGER statement.

##### 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.

Action: See Oracle8 Server SQL Reference for valid trigger variable types.

##### 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 Oracle8 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.

  For more information about ALTER TRIGGER, see the index entry on "ALTER TRIGGER" in Oracle8 Server SQL Reference.

Prev | Top | Next
| Copyright © 1997 Oracle Corporation. All Rights Reserved. |
Library | Product | Contents | Index