У меня есть исходный файл sqlite, который доставляет исходные данные моим пользователям.Эти данные предоставляются пользователям с использованием общего стека данных ядра (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext), помеченного как только для чтения.Таким образом, пользователи не могут изменять записи в начальном хранилище, но они могут сохранять наборы данных с информацией, поступающей из него, в отдельном хранилище для чтения / записи.
В последний раз я обновлял свой начальный sqliteфайл (чтобы обогатить его большим количеством данных) я предпочел создать / сгенерировать его совершенно новым.Конечно, внутренняя модель / сущности остались прежними.Я тестировал его несколько раз на своих устройствах, и похоже, что данные ядра не имеют проблем с заменой базового (только для чтения) начального файла sqlite.Но, к сожалению, несколько пользователей сообщили о потере данных, и я так и не смог воспроизвести этот сценарий.Так может ли быть так, что замена (только для чтения) начального sqlite-файла - это неправильный способ обработки обновлений?
Что вы предлагаете?Другие лучшие практики приветствуются.