Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Complex Integrity Checking
The problem with this solution is the Autonomous Transactions will not be
able to see any changes done within the current transaction only the
committed one. So no way to enforce business logic during the context of the
transaction.
This is why I asked before how frequently commit happens.
Regards,
Waleed
-----Original Message-----
Sent: Wednesday, June 05, 2002 6:33 PM
To: Multiple recipients of list ORACLE-L
With the introduction of Autonomous Transactions this is no longer entirely true. If you call an autonomous transaction procedure, it is executed in a separate transaction context. This gives you the ability to probe the mutating table without inducing the error. A good explanation can be found in Tom Kyte's Export One-on-one Oracle book in the chapter on Autonomous Transactions.
HTH
Tony Aponte
-----Original Message-----
<mailto:Rajendra.Jamadagni_at_espn.com> ]
Sent: Wednesday, June 05, 2002 9:24 AM
To: Multiple recipients of list ORACLE-L
no matter what you do, if you access table A inside a trigger on table A, oracle will give you mutating table error. What you could (and I really mean
you have to consider your business logic here) is go ahead and insert the rows with a temp flag. As soon as you commit, fire up a procedure that will do the scan on the table and delete appropriate rows which have the temp status.
BTW how big is this table? What is the frequency of inserts and updates?
Raj
QOTD: Any clod can have facts, but having an opinion is an art!
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: Khedr, Waleed
INET: Waleed.Khedr_at_FMR.COM
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Wed Jun 05 2002 - 20:03:19 CDT
![]() |
![]() |