2009-10-18 3 views
0

Я пытаюсь создать приложение для iPhone, используя встроенные в таблицу управления основными данными. Я хочу синхронизировать данные с базой данных MSSQL или MySQL. Основные данные совместимы с SQLite, поэтому я думал, что это может работать как мост. Может ли кто-нибудь подумать о том, как можно достичь этой функциональности?Синхронизировать основные данные с SQL или MySQL через SQLite

ответ

6

Вы думаете об этом неправильно. CoreData не «совместим» с SQLite. Один из типов поддерживаемых хранилищ с использованием SQLite в качестве детали реализации. Фактическое содержимое этой базы данных SQLite недокументировано и внутренне относится к CoreData. Это ключевой момент, вы не можете использовать произвольную базу данных SQLite3 с CoreData, CoreData создает SQLite3 DB для конкретной модели.

Если вы хотите синхронизировать данные из другого БД в CoreData, вам необходимо запросить эту БД, получить данные ответа, а затем создать и обновить NSManagedObjects на основе этих данных. Точные сведения о том, как вы это делаете (через веб-сервис и сервер приложений, которые переносят вашу БД, с клиентской библиотекой DB, встроенной в ваше приложение, и т. Д.) Будут зависеть от точной природы сервера и от того, как вы хотите взаимодействовать с ним, но вы не будете синхронизировать вокруг SQL-таблиц в CoreData и с компакт-диском CD, описывая макет таблицы, обновления должны проходить через стандартные интерфейсы CoreData, как и любые другие манипуляции с объектами.

+0

Интересно. Так вы бы использовали мыло, отдых, json или? – Bryan

+0

Лично я склонен использовать JSON, который используется через REST-интерфейс для такого рода вещей, потому что он имеет меньшую пропускную способность, чем SOAP, но лучше всего будет зависеть от вашей точной ситуации. –

+0

Спасибо Луи--! – Bryan

Смежные вопросы