On 6 Sep 2015, at 2:26pm, Yuriy M. Kaminskiy <yumkam at gmail.com> wrote:
> Not quite. Even if some statement failed, if you COMMIT in the end, it > will succeed and database will be (partially) modified. > > It's application developer responsibility to check for errors and issue > ROLLBACK instead of COMMIT, if desirable (BTW, in case of some > errors^[], sqlite3 may cancel [and automatically ROLLBACK] transaction, > it is application developer responsibility to check if transaction is > still active after errors [with sqlite3_get_autocommit()]). This is a very important part of SQLite and I keep forgetting it. It has always seemed weird to me. Thank you to Yuriy for correcting me. Simon.