Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Autonomous Transactions
Yes, that is the way it works, unless you specify "autonomous".
Note that savepoints are a convenient way to place markers as to places
in the transaction flow you may want to rollback, but they are all part
of the same transaction. You can be inside a procedure, called by
another procedure, called in a SQLPlus session that has uncommited
data, and if the inner most procedure issues a commit, it will affect
all uncommited data, all the way out to the SQLPlus session including
any inserts, updates or deletes you may have done since you connected
or your last commit or your last rollback command (regardless of any
savepoints). Again, the exception here will be if you used "autonomous"
procedures.
Calling a procedure does not initiate a new transaction (stream).
Putting in a savepoint does not initiate a new transaction (stream).
Every statements or called procedures/functions/... executes as a
continuation of your current transaction, unless you issue a commit or
rollback (autonomous being the exception).
Also note that there are implied commits, such as when you issue a DDL
command.
You can get more information from Oracle web documentation: http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96590/adg08sql.htm
Hth Received on Mon Aug 28 2006 - 09:37:41 CDT