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] -----------------------------------------------------------------------------