Можно ли использовать более одного файла SQLite в CoreData? - PullRequest
0 голосов
/ 26 сентября 2010

Здравствуйте, товарищи по семейству stackoverflow?

Я знаю, что неэффективно создавать одну дополнительную таблицу sqlite в системе iPhone CoreData.(X)

В настоящее время у моего приложения есть одна таблица sqlite, но есть предустановленные данные для пользователей, поэтому не нужно тратить время на анализ.Но если я добавлю новую сущность в текущую структуру таблицы SQLite, она уничтожит все предустановленные данные.Я не пытался использовать метод иммиграции, но не думаю, что это будет просто добавление новой сущности на стол.Я думаю, что это также стирает предыдущие предустановленные данные.

Текущая архитектура файла SQLite.

  • сущность: A
  • атрибуты: содержит данные

Я хочу сохранить A с атрибутамивсе еще содержат данные, но также добавляют новую сущность: B.

сущность: A

атрибуты: предыдущие содержащиеся данные

(PLUS +)

сущность: B

атрибуты: новые данные

Нужно ли создавать дополнительный набор постоянства для отдельного хранения сущности B (создать другой файл SQLite и использовать в качестве хранилища) или существует ли способ добавить сущность B в текущий SQLite?без изменений в сущности A?

Спасибо.

1 Ответ

1 голос
/ 26 сентября 2010

Чтобы прямо ответить на ваш вопрос: Да, вы можете ссылаться на несколько файлов SQLite в Core Data. Вы захотите использовать уникальный постоянный магазин для каждого.

Я не понимаю остальную часть вашего вопроса, поэтому вполне вероятно, что создание нескольких постоянных хранилищ совсем не то, что вам нужно.

Я знаю, что эффективно создать одну дополнительную таблицу sqlite в системе iPhone CoreData.

Это неправда. Создание нескольких объектов (например, таблиц, но это абстрагировано) может привести к гораздо более эффективным запросам.

В настоящее время у моего приложения есть одна таблица sqlite, но нет необходимости изменять предварительно установленную таблицу sqlite, но нужно добавить какой-либо другой атрибут.

Просто добавьте атрибут к вашей сущности. Если ваше приложение уже выпущено или вы хотите сохранить существующие данные, вам придется настроить миграцию и / или включить облегченную миграцию .

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

Это не имело никакого смысла для меня. Вы можете уточнить?

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