Как я могу скопировать базу данных sqlite в память? - PullRequest
0 голосов
/ 27 июня 2019

Я хотел скопировать файл «.db» из базы данных SQLite в память, используя код JAVA.Как я могу это сделать?

1 Ответ

1 голос
/ 28 июня 2019

Что вы можете сделать: -

  1. Откройте базу данных в памяти и присоедините базу данных, которую хотите скопировать.

  2. Создайте таблицы и скопируйте данные для каждой таблицы (вы можете определить таблицу и другие имена сущностей из sqlite_master (имя, тип и столбцы таблицы))

    1. Вы можете использовать CREATE TABLE x AS SELECT * FROM attached_database_identifier.x , отмечая ограничения согласно [SQL, как понято SQLite - CREATE TABLE - CREATE TABLE ... AS SELECT Statements] (https://www.sqlite.org/lang_createtable.html#rowid))
    2. выше дляимя таблицы x
    3. В качестве альтернативы вы можете создавать таблицы на основе SQL , который хранится в sqlite_master в sql столбец.
  3. Создание других объектов Индексы, представления и триггеры (опять-таки столбец sql из sqlite_master будет содержатьSQL для создания элементов(Вы не захотите создавать их до того, как данные будут скопированы из исходных таблиц, поскольку триггеры сделали бы свою работу).

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