Subject | Re: [firebird-support] Re: Records updated still in memory after ClientDataSet.ApplyUpdate(0) |
---|---|
Author | Helen Borrie |
Post date | 2003-11-10T09:47:14Z |
At 09:24 AM 10/11/2003 +0000, you wrote:
Provider internally requests the transaction to be started if it is not
started.
that isolate one user's view of the database from another's. This isn't
MySQL, Paradox, etc., it's client/server computing, designed for multiple
concurrent users.
The ClientDataset separates the data from their transaction context for the
period that the user works with them. When you call ApplyUpdates, it puts
the cache back in touch with the transaction. ApplyUpdates means different
things in different RDBMS. In Firebird, it posts changes to the database
but it doesn't commit the changes. To do that, you need to call
CommitUpdates (to commit the work) or CancelUpdates (to roll it back).
Study the Delphi help on these methods. It does give a reasonable
explanation, in a generic sort of way, of what goes on beneath the user
interface in transactional RDBMS. It is off-topic here...
heLen
>Do I have to embrace the transaction with something likethis isn't a Delphi forum..but I'll just comment that I expect that the
>
>ADOconnection1.beginTrans and
>
>ADOConnection1.commitTrans?
Provider internally requests the transaction to be started if it is not
started.
>If you say that Firebird has TRANSACTION!It does. Firebird does everything inside client-to-server transactions
that isolate one user's view of the database from another's. This isn't
MySQL, Paradox, etc., it's client/server computing, designed for multiple
concurrent users.
The ClientDataset separates the data from their transaction context for the
period that the user works with them. When you call ApplyUpdates, it puts
the cache back in touch with the transaction. ApplyUpdates means different
things in different RDBMS. In Firebird, it posts changes to the database
but it doesn't commit the changes. To do that, you need to call
CommitUpdates (to commit the work) or CancelUpdates (to roll it back).
Study the Delphi help on these methods. It does give a reasonable
explanation, in a generic sort of way, of what goes on beneath the user
interface in transactional RDBMS. It is off-topic here...
heLen