Store sqlite3 temporary tables and indices in memory
By default, sqlite3 will use a file to store temporary tables and indices. It does this by referencing the SQLITE_TEMP_STORE
preprocessor macro. As long as SQLITE_TEMP_STORE
can be overridden, running PRAGMA temp_store=MEMORY;
will tell sqlite3 to store these temporary tables and indices in memory instead of a file.
$ sqlite3
sqlite> PRAGMA temp_store;
0
sqlite> PRAGMA temp_store = MEMORY;
sqlite> PRAGMA temp_store;
2
Note that any existing temporary tables will be deleted as soon as the pragma setting is modified.