У меня есть сайт, который использует базу данных MySQL.
Я пытаюсь создать приложение для iOS для него, поэтому я хотел использовать Swift для импорта информации из базы данных и вставки в нее новой информации. Я прочитал, что для чтения я должен использовать файл PHP для создания файла Json, прочитать его и извлечь данные. Но я не могу найти способ сделать это быстро.
Есть ли способ подключить iOS-приложения (написанные на Swift) к MySQL?
В архитектуре клиент-сервер клиент полностью отделен от сервера, и они просто обмениваются данными благодаря общему «языку» (в вашем случае определенные поля закодированы в JSON).
Ваш клиент — это ваше iPhone-приложение, написанное на Swift (но это не имеет значения).
Теперь вам нужно создать сервер, который полностью отделен от приложения. Вам не нужен Свифт для этого. Вам понадобится сервер (например, дешевый облачный VPS на Amazon EC2, Rackspace Cloud Servers, Microsoft Azure …), и вам нужно будет создать другое приложение, которое будет работать на этом сервере.
Если вы просто извлекаете данные из базы данных MySQL, вы можете легко сделать это на PHP. Или вы можете использовать Node.js (который использует JavaScript: это одна из «самых модных» технологий на данный момент), Ruby, Python и т. Д.
Для примера, который использует PHP, вы можете проверить: https://stackoverflow.com/a/22367600/192024
Чтобы прочитать данные JSON в вашем приложении iOS, вы можете использовать встроенные библиотеки: https://developer.apple.com/library/ios/DOCUMENTATION/Foundation/Reference/NSJSONSerialization_Class/index.html (доступно и в Swift)
Я не знаю, что делает ваше приложение, но если вы хотите игнорировать все вещи с бэкэндом (сервером), вы всегда можете рассмотреть что-то вроде Parse Core и пусть кто-то другой позаботится о бэкэнде.
Посмотрите это видео об использовании технологии с открытым исходным кодом, представляющей базы данных SQL как веб-сервисы JSON.REST, которые вы можете использовать в своем приложении Swift. http://www.convertigo.com/en/demos/videos/390-connect-to-sql-data-sources.html