Subject AW: AW: AW: AW: [Firebird-Java] Do I need to commit every transaction if I'm using jaybird?
Author Steffen Heil
Hi

> Sorry. Database systems provide commit and rollback
> statement or calls to control transactions. Unless you are
> doing something completely trivial, you should turn
> auto-commit off and manager transactions yourself. There is
> no free lunch in auto-commit: transactions are started and
> committed on your behalf. Auto-commit, at least for
> Firebird, will be no faster than an explicit commit after
> every statement, and a great deal slower that performing
> commits at the end of a logical transaction.
>
> Auto-commit basically exists for database system that do
> record locking where a causual record access will block
> updates until a user explicitly concludes the transaction or
> terminates the session. For a database using
> multi-generational concurrency control, it buys you nothing
> the overhead.
>
> Whether for consistence or performances, formal transactions
> are good things.

Ok, I understand you point.
However I like it, not to have any login in the application, but in the
database.
So I do everything by stored procedures. [Okay, nearly everything.]
This means in effect, that any operations which logically belong together,
are grouped in stored procedures and their execution from the client
application is just one procedure call or one select over a stored
procedure.
So technically auto-commit is just what I want.

Regards,
Steffen


[Non-text portions of this message have been removed]