Michael Scharf wrote:
Without journalling, you cannot have a ROLLBACK command.
And the semantics of UPDATE become UPDATE OR FAIL instead
of the default UPDATE OR ABORT.  The difference is subtle,
but important.


There are other reasons to disable the rollback journal:
Suppose you want to create a database for querying only.
The real data persistence happens somewhere else. The
database is there to organize the data and to access the
data. Once the database is filled, it will not be modified.

If the filling fails, you try to refill it again.

You can also think of using it for a 'bulk fill': you
only use is when you file the database with the (massive)
initial data. From then on you use sqlite with journaling...

Michael

I agree. I have a particular need for a "read only" environment, where editing happens elsewhere. This readonly database has extra indices and denormalized tables to speed up searches, but no need to INSERT, DELETE, UPDATE or CREATE/DROP anything.

I also think a "readonly" version of sqlite would be nice to have. An even smaller dll/lib which only allows for SELECTs. I might attempt to do this when I have the time.

Has anybody done anything like this?

jp

Reply via email to