Subject Re: [IBO] migrating from Interbase/BDE to Interbase/IBO
Author Helen Borrie
At 09:31 AM 26/05/2004 +0100, you wrote:

> > Is the COMMIT compulsory ?
> > do I have to change all my POSTs statements and add to them a
> > COMMIT ? This is not 100% compatible with BDE.
> >
> > note: I am using IBOTable, and my transaction is set to AutoCommit.

If the transaction is AutoCommit then POST also performs a
COMMITRETAINING. It's not compulsory (nor advisable) to perform COMMIT as
well *every time*, as you lose the benefit of COMMITRETAINING. However,
you do need to call COMMIT from time to time, to move the OAT forward and
permit garbage collection to proceed.

This is, btw, exactly as it is in the BDE. The difference is that nobody
at Borland ever told you about the crucial difference between
CommitRetaining and Commit...

Where TIBOTable is a little different in the positioning of
inserts. TTable plays funny games with indexes to try to relocate an
Append as an in-place insert. IBO uses a system known as KeyLinks and
actually does an insert-in-place. You do need to make sure that you use
the correct KeyLinks, though, or IBO has nowhere to put the new row (except
at the end, of course...)