SQLite Forum

Temp database

That is, you can specify a file name, the special name ':memory:', or an empty string.

Specifying a filename opens that file as a database.  Specifying the special name ':memory:' opens a database that resides purely in memory (as in Volatile RAM).

Specifying nothing for the filename (an empty text string) causes a "temporary file" to be created and then opened as a database.  Once the "temporary file" (database) connection is closed, the "temporary file" is deleted.

A 'named file' database may be accessed simultaneously by multiple connections, however, a ':memory:' or '' (temporary) database may only be exclusively accessed by the connection which created it -- it cannot be accessed by multiple connections.

You will note that *shared-cache* is a method of **emulating** multiple connections, however, there is only one single connection to the database.