Gerry,
I took a look at this and I don't see how it works.
I believe I would have to do the following:
Make TEMP copies of all of the tables that are being modified.
Upon COMMIT:
Delete the old tables
Rename the temp tables to the old tables
COMMIT
I don't see an easy way to do this in SQLite.
Keep in mind I am a newbie to database access.
Ray
---- Gerry Snyder <[EMAIL PROTECTED]> wrote:
> [EMAIL PROTECTED] wrote:
> > Here is an excerpt from my requirements doc:
> >
> > ....
> > If a transaction is aborted all database state is reset
> ("rolled-back") to its value at the time the transaction was opened.
> > Nested transactions abort or commit relative to their
> parent transaction. In the case of an aborted transaction,
> the database state is rolled back to the point where
> the transaction was started. (This is true whether
> or not the transaction is nested.) In the case of
> a commit, the nested transaction’s changes become
> part of its parent transaction, as if the nested
> transaction boundaries had never been established.
>
> If I had to implement this with the current SQLite,
> I would start a new TEMP table at each BEGIN, and
> destroy the current TEMP table at a ROLLBACK or
> add its contents to its parent table (either
> the previous TEMP table or the "real" table at a
> COMMIT.
>
> I think that does everything you need, and would be
> easy to program.
>
> HTH,
>
> Gerry
>
> -----------------------------------------------------------------------------
> To unsubscribe, send email to [EMAIL PROTECTED]
> -----------------------------------------------------------------------------
>
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------