Michael Knigge <[EMAIL PROTECTED]> wrote: > > THe bigger question is why you are designing a new system to > > work with SQLite-2. SQLite-2 is in maintenance for use on legacy > > Eh... sorry, I was in a hurry.... of course I use sqlite3_finalize()! > > > > systems. Use SQLite-3 instead. sqlite3_finalize() cannot fail > > for any reason other than SQLITE_MISUSE. > > Then have a look at > > http://www.sqlite.org/capi3ref.html#sqlite3_finalize > > <snip> > All prepared statements must finalized before sqlite3_close() is called > or else the close will fail with a return code of SQLITE_BUSY. > ..... > Incomplete updates may be rolled back and transactions canceled, > depending on the circumstances, and the result code returned will be > SQLITE_ABORT. > </snip> >
If sqlite3_finalize() returns SQLITE_ABORT, it merely means that you finalized an operation that was in process. The statement still gets finalized. -- D. Richard Hipp <[EMAIL PROTECTED]>