On Fri, Jun 24, 2011 at 22:41:16 -0700, Eugene Ong wrote:
> I don't use transactions in my app,

There is no way not to use transactions. If you don't start transaction
explicitly, implicit transaction will be started for each statement.

This ensures that when a statement fails (e.g. because of constraint
violation), it has no effect and that you don't end up with corrupt database
when the write fails (because application crashes, power fails or whatever).

>  is the data safe from failure if I turn off the journal?

No.

http://sqlite.org/pragma.html#pragma_journal_mode clearly says, that if you
set PRAGMA journal_mode = memory or PRAGMA journal_mode = off and the
application crashes while writing the database, the database will likely go
corrupt.

> The insert isn't concurrent

Locking is independent of journal mode.

> and I'm using System.Data.SQLite (.net)

The above applies to using sqlite from any language. The bindings all use the
same library.

-- 
                                                 Jan 'Bulb' Hudec <b...@ucw.cz>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to