Задать вопрос

Подключение к MySQL из iPhone-прилоложения?

Я заказчик iphone-приложения. И я не хочу использовать xml, для обмена данными между моим сервером-mysql и приложением.


Возможно ли добавить в iphone-приложение некий драйвер (или что-то) для соединения с сервером и выполнения sql-запросов, получение ответов?
  • Вопрос задан
  • 5472 просмотра
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 5
@reminded
Вот этим API можно пользоваться — mysql-cocoa.sourceforge.net/

Но как-то ненадежно это напрямую открывать соединение с мобильного устройства до базы…
Обычно все-таки делают промежуточный слой. Ну т.е. пишут сервер (на чем угодно, хоть на PHP) который мобильное устройство дергает и уже он лезет в базу и потом отдает ответ на iphone в нужном формате.
Ответ написан
Комментировать
Давать полное подключение к базе данных — плохая практика.
Предлагаю вам задуматся и сделать всё через своё API для программы и БД (например Python/PHP + JSON).
Знаю, звучит как много работы, но это вас спасёт от неприятностей.
А если уж вы дали кому-то доступ к БД, обрежте все (ненужные) права, сделайте большенство вещей через view, ограничивайте подключенного пользователя максимально…

PS: MySQL протокол он тоже много данных передаёт по сети, это вы не думайте.
Ответ написан
Комментировать
SAKrisT
@SAKrisT
да, реально
извините, но не помню где брал libmysqlclient.a + headers
Ответ написан
karenishe
@karenishe
Я бы делал через API, который можно реализовать на любом языке со стороны сервера, где лежит база.
Ответ написан
Комментировать
Paka
@Paka Автор вопроса
Спасибо за советы.

А чем принципиально будут отличаться два варианта:

1) Напрямую подключаться к mysql
2) Положить на сервере php-скрипт, который будет выполнять любой поступивший sql-запрос и отдавать xml-файл, для SELECT.

Я вот не понимаю зачем нужны эти прокладки в принципе, когда у мне приложение мое. Если я даю сторонним разработчикам возможность использовать свой сервер, тогда да: отдаю только то что хочу и как хочу. Но когда ios-клиенты тоже полностью мои — лишние прокладки не к чему.

зы. я вот в одном проекте организовал подключение 1С к mysql напрямую через драйрер, вместо обмена через файлы. Такой подход зарекомендовал себя очень стабильно и хорошо, и ошибки с непонятками сразу улетучились.
Вот этот удачный опыт хочу применить и в мобильном приложении.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы