Я использую последнюю версию Sqlite версия 3.8.3.1 на хосте Ubuntu. Здесь я пытаюсь создать в памяти базы данных при помощи гр программы и опции описаны в следующей ссылке: http://www.sqlite.org/inmemorydb.htmlСоздание базы данных Sqlite3 с использованием опционной памяти
Здесь база данных создается с помощью следующей функции вызова:
sqlite3_open("file::memory:?cache=shared", &db);
Здесь файл базы данных file::memory:?cache=shared
является созданный на жестком диске локально. Здесь почему sqlite3 создает файл базы данных на жестком диске для опции in-memory?
Сообщите мне, если я делаю что-то неправильно?
Пробовал использовать следующий вызов функции sqlite3_open_v2 (": memory:? Cache = shared", & db, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL); После использования вызова функции функции также создается файл «: memory:? Cache = shared» на жестком диске. Что-то не так в моем использовании? – user3309802
Ошибка в том, что отсутствует флаг SQLITE_OPEN_URI. –
Если я включаю только флаг SQLITE_OPEN_URI, тогда я получаю следующую ошибку: Не удается открыть базу данных: из памяти. И если я поместил все флаги SQLITE_OPEN_URI | SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE затем создается база данных, а также создает следующий файл на жестком диске: memory:? Cache = shared – user3309802