Thanks for the reply. I have got the code for the binding and it actually does roll back automatically in case of exceptions. :)
Ahmed -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Monday, July 16, 2007 12:14 PM To: sqlite-users@sqlite.org Subject: Re: [sqlite] Does Transaction object roll back automatically on exceptions? "Ahmed Sulaiman" <[EMAIL PROTECTED]> wrote: > Hi all, > > I have tried this question in the forum with no answer, so I decide to > give it a try here :) > > I am using the "Using" statements in C# to handle the closing of SQLite > connection, transaction and command objects. I have this setup in > different places in my code (Generic methods returning SQLite objects) > > using (IDbConnection conn = CreateConnection()) > { > conn.Open(); > using (IDbTransaction transaction = conn.BeginTransaction()) > { > Dosomething(); > transaction.Commit(); > } > } > > My question, what happens if there was an exception inside the > transaction using block? I know that the transaction object would be > closed and disposed, but does the traction roll back automatically by > the SQLite engine, or do I need to have special logic for that? What is > the suggested best practices in this case? > In the equivalent code in TCL, the transaction would rollback automatically. But I do not know anything about the C# bindings that you are using, so I do not know what will happen in your case. Have you tried it to see? What does the documentation that comes with your SQLite C# bindings say? It is the C# bindings, not the SQLite core, that will determine this behavior. -- D. Richard Hipp <[EMAIL PROTECTED]> ------------------------------------------------------------------------ ----- To unsubscribe, send email to [EMAIL PROTECTED] ------------------------------------------------------------------------ ----- ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------