Конвертировать части базы данных MySQL с веб-сайта в CoreData / SQLite на iOS - PullRequest
6 голосов
/ 24 ноября 2011

У меня есть веб-сайт с базой данных MySQL, части которого я хотел бы повторно использовать в своем приложении для iPhone, заполнив базу данных CoreData (в основном приложение для iPhone будет автономной версией сайта).

Я думаю о написании сценариев, которые преобразуют mySQL в SQLite и затем каким-то образом подают данные в CoreData.

Как бы вы выполнили эту задачу?

1 Ответ

3 голосов
/ 25 ноября 2011

Решение

Изучите следующий учебник:

http://www.raywenderlich.com/980/core-data-tutorial-how-to-preloadimport-existing-data

TL; DR - для написания в SQLite используется скрипт Pythonбаза данных в формате, совместимом с Core Data.

Возможные недостатки

  • Если у вас сложная база данных, это может быстро запутаться.
  • Если есть какие-либо ошибки в формате базы данных SQLite, Core Data не терпит, и вы можете получить необъяснимые сбои.
  • Apple рекомендует никогда не связываться напрямую с хранилищем данных напрямую, что меня немного расстраиваетнервничаю из-за этого подхода.

Альтернатива

Я бы сделал дамп базы данных MySQL в файл CSV, смоделировал бы хранилище Core Data в Xcode как необычное и записал быбыстрый и грязный импортер внутри самого приложения.

Вы можете использовать cCSVParse для выполнения тяжелой работы CSV.

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