Ваш вопрос не совсем то, что вам нужно задать. Хранилище SQLite в Core Data - это просто хранилище для графа объекта Core Data. Тот факт, что это база данных SQLite, не имеет значения для Core Data. Таким образом, ваш вопрос действительно таков: «Как объединить два графа объектов Core Data в один?»
Это зависит от того, что вы хотите сделать с данными. Одним из правил в Базовых данных является то, что вы не можете иметь отношения между двумя объектами в разных постоянных хранилищах. Итак, если вам не нужны отношения между объектами в Магазине A и объектами в Магазине B, это действительно довольно просто. Просто добавьте оба постоянных хранилища в NSPersistentStoreCoordinator
, и все объекты из обоих хранилищ будут доступны из любого контекста управляемого объекта, связанного с этим координатором постоянного хранилища.
Если вам нужно иметь отношения между объектами в обоих магазинах или вы просто хотите иметь один магазин, лучше всего было бы создать второй NSPersistentStoreCoordinator
и третий, отдельный постоянный магазин для хранения граф объединенных объектов. Вам нужно будет написать код для создания копий объектов в контексте управляемого объекта, присоединенного к этой второй NSPersistentStoreCoordinator
. Вам нужно будет установить те же отношения между копиями, что и у исходных объектов, но то, как вы это сделаете, зависит от вашей модели данных. Если вы хотите добавить больше деталей к вашему вопросу, возможно, я смогу дать вам лучшее представление о том, что будет происходить.