Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: MASSIVE degradation of insert using sequence ID's via JDBC on 9i?
Unless the user has a coffee break after every individual update, I
frankly don't see why you should commit every update.
Do you think changing one bit in a database constitutes a transaction?
I don't! A transaction is a *logical unit of work*. Changing one record
is not necessarily a logical unit, in fact whether it is a logical unit
should be determined by the end-user, NOT by the application.
If you autocommit, if the end-user wants to undo his/her changes, you
force him to create another transaction.
In using autocommit, you consequently effectively disable rollback!
I know for a fact there are many 3rd party apps where autocommit is the default, and you can't even turn that off! I'm dealing with an application where autocommit is the cause for junk in the database: changing a detail form will force the end-user to change the master form, creating redundant junk records. In this application, the end-user can't undo anything. This is bad.
I don't see why those bad habits need to be replicated in Oracle
applications.
It is a bad habit, because every transaction has a transaction header
and a commit marker.
Single record commits will increase the redolog volume, and
consequently there will be more redolog switches.
-- Sybrand Bakker Senior Oracle DBAReceived on Tue Jun 28 2005 - 03:09:51 CDT