Как проверить, является ли база данных SQLite базой данных в памяти или нет - PullRequest
0 голосов
/ 15 января 2020

У меня есть обработчик для подключения к базе данных sqlite3. Я хотел бы знать, является ли база данных базой данных в памяти или нет.

Существует ли какой-либо API для этого?

1 Ответ

1 голос
/ 15 января 2020

На уровне API C вы можете использовать sqlite3_db_filename, чтобы получить имя файла. Если он пуст или пуст, у вас есть временная база данных или база данных в памяти.

Интерфейс sqlite3_db_filename (D, N) возвращает указатель на имя файла, связанное с базой данных N соединения D. Файл базы данных имеет имя «основной». Если в подключении к базе данных нет присоединенной базы данных N, или , если база данных N является временной базой данных или базой данных в памяти, эта функция будет возвращать либо указатель NULL, либо пустую строку.

Независимо от того, какую клиентскую библиотеку API вы используете, она, вероятно, действует одинаково: имя файла будет пустым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...