SQLite можно заставить работать без файлов прямо в памяти. В случае PHP и PDO для этого в качестве соединения указывается sqlite::memory::
$db = new PDO('sqlite::memory:');
В этом случае база существует в памяти ровно до закрытия соединения.
Если же указать в качестве соединения sqlite:, будет создан временный файл, который после закрытия соединения также будет удалён.
Оба типа соединения особенно полезны при написании модульных тестов, где как раз требуется частое создание и удаление баз данных.


