how instead of triger is helpful for mutating tables errors
handlling ?
Answers were Sorted based on User's Feedback
Answer / guru
"Mutating" means "changing". A mutating table is a table
that is currently being modified by an update, delete, or
insert
statement. When a trigger tries to reference a table that is
in state of flux (being changed), it is considered
"mutating" and
raises an error since Oracle should not return data that has
not yet reached its final state.
Another way this error can occur is if the trigger has
statements to change the primary, foreign or unique key
columns of the
table off which it fires. If you must have triggers on
tables that have referential constraints, the workaround is
to enforce the
referential integrity through triggers as well.
There are several restrictions in Oracle regarding triggers:
• A row-level trigger cannot query or modify a
mutating table. (Of course, NEW and OLD still can be
accessed by the
trigger) .
• A statement-level trigger cannot query or modify a
mutating table if the trigger is fired as the result of a
CASCADE delete.
So some time we can not use triggers to put DMl operations
on table. that time we can use INSTEAD OF TRIGGER.
| Is This Answer Correct ? | 7 Yes | 0 No |
Answer / mahesh
create a view (simple view) on mutating table
write a tigger on view (define similar to table)
Know try to do dml operations on table
it will not show the mutating error
| Is This Answer Correct ? | 2 Yes | 2 No |
What is sql partition function?
What is trigger with example?
HOW CAN I FIND MAX SAL ,ENAME FROM EMP TABLE.
What is row_number () in sql?
What does plvtab enables you to do when you showthe contents of pl/sql tables?
Write a sql query to convert all character to uppercase after hypen.
what are the differences between char and nchar? : Sql dba
Is sql difficult?
What is the main difference between a UNION statement and a UNION ALL statement? 1. A UNION statement eliminates duplicate rows; a UNION ALL statement includes duplicate rows. 2. A UNION statement can be used to combine any number of queries; a UNION ALL statement can be used to combine a maximum of two queries. 3. A UNION statement can only combine queries that have parallel fields in the SELECT list; a UNION ALL statement can combine queries with differing SELECT list structures. 4. A UNION statement cannot be used with aggregate functions; a UNION ALL statement can be used with aggregate functions. 5. There is no difference between the two statements; they are interchangeable.
What is a .db file?
What is the difference between a query and a report?
How many disk partitions should I have?
Oracle (3253)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)