2015-08-13 3 views
0

В чем разница между SQLite InMemory DB и временной БД?Разница между SQLite Temporary DB и InMemory DB

Ссылка: Temporary DB

В то время как я ожидаю, Temporary DB представляет собой диск с файловой БД, документация немного запутанная, как он говорит временный DB почти так же, как в БД памяти.

Я ищу временную базу данных на диске, где записи записываются в файл на диске. Если временная БД хранится как файл на диске, где я их найду? Я понимаю, что когда соединение закрыто, DB перестает существовать, но пока соединение открыто, я ожидаю найти БД на диске.

ответ

0

documentation вы связаны говорит:

Даже если файл на диске выделяется для каждой временной базы данных, на практике временной базы данных обычно проживает в кэше пейджера в памяти и, следовательно, очень мало разницы между чистая база данных в памяти, созданная «: память:» и временная база данных, созданная пустым именем файла. Единственное отличие заключается в том, что база данных «: memory:» всегда должна оставаться в памяти, тогда как части временной базы данных могут быть сброшены на диск, если база данных станет большой или SQLite окажется под давлением памяти.

По умолчанию для временных файлов базы данных используется временный каталог с таким именем файла, как etilqs_*. Но, как упоминалось выше, часто не обязательно, чтобы данные были фактически сохранены в этом файле.

+0

благодарит за ответ. Но как мне настроить, когда записи хранятся на диске. Я пытаюсь использовать SQLite, потому что есть миллионы записей, которые невозможно сохранить в памяти. Итак, глядя на настройку параметров таким образом, что SQLite использует память как можно меньше (порядка нескольких 10 МБ). – Abee

+0

Для временных баз данных это делается [аналогичным образом] (http://www.sqlite.org/pragma.html#pragma_cache_size), как и для других баз данных. –

Смежные вопросы