Как подключить приложение iOS к базе данных (mySQL и SequelPro)?

Я ищу способ подключить приложение к базе данных, созданной в Sequel Pro, которая подключена к серверу mySQL (запускается через MAMP). Я уже искал некоторые решения, но есть сотни разных сообщений, одни говорят, что SQLite будет единственной возможностью, другие говорят, что CoreData будет идеальным.

Теперь я нашел фреймворк под названием «MCPKit», но этот фреймворк на самом деле не актуален, и похоже, что сама Apple также рекомендует CoreData для управления данными. (https://developer.apple.com/technologies/ios/data-management.html)

Я не знаком с CoreData и буду очень рад, если кто-нибудь знает другой способ наладить соединение.

Я стараюсь быть как можно более конкретным, но если у вас уже есть вопросы, задавайте их.


person RForce    schedule 05.04.2013    source источник
comment
Вы спрашиваете об использовании базы данных непосредственно на устройстве или подключении к базе данных по сети?   -  person Jeff Wolski    schedule 05.04.2013
comment
Да, извините, я хочу прочитать данные из базы данных, чтобы реализовать их, например, в UITableView. Я хочу подключиться к базе данных по сети.   -  person RForce    schedule 05.04.2013


Ответы (4)


Возможно подключение к базе данных mysql. Я сделал это через php, который вернул XML-файл, который мое приложение проанализировало и сохранило.

Эта ссылка также охватывает эту тему.

Как подключиться к базе данных MySQL с iPhone? < / а>

person Tim L    schedule 05.04.2013

Core Data - это технология для сохранения объектов в iOS, которая часто используется в качестве локальной базы данных. Фактически, NSPersistentStore почти всегда реализуется как база данных SQLite в iOS. Однако, если вы хотите выполнять сетевые вызовы для получения данных из базы данных на вашем сервере, Core Data этого не делает.

Короткий ответ заключается в том, что вам необходимо создать на своем сервере веб-службу, которая позволит вам получить доступ к данным. Хороший способ (хотя, конечно, не единственный) поддерживать связь между вашим сервисом и мобильным устройством - это сокеты. Вот руководство это может дать вам хорошее начало.

person Jeff Wolski    schedule 05.04.2013

CoreData фактически использует SQLite ... Вы можете получить доступ к своей базе данных с помощью NSURLRequest, а затем создать NSData с запросом. В зависимости от формата, который ваш сервер возвращает вам (например, JSON), вы можете преобразовать NSData в словарь. С JSON это будет выглядеть так:

 NSDictionary *contentDictionary = [NSJSONSerialization JSONObjectWithData:contentServerResponse options:NSJSONReadingMutableContainers error:nil];

тогда вы можете получить доступ к обычному словарю Key-Value-Access и назначить контент вашему ViewController.

person Heckscheibe    schedule 05.04.2013

Если вы используете MAMP, попробуйте написать файлы сценария php для доступа к базе данных mySQL и отобразить его как текст JSON с помощью функции json_encode в PHP. У вас есть много парсеров для синтаксического анализа JSON в iOS.

person Mani    schedule 05.04.2013