Надеемся, из вступительного материала в начале книги вы помните, что одной из причин популярности MySQL является развитая поддержка приложений. В отличие от многих известных коммерческих конкурентов, СУБД MySQL раскрывает разработчикам свои внутренние возможности через ряд программных интерфейсов приложений, предоставляя таким образом свободу выбора языка программирования для создания приложений, работающих с базами данных.
Данная глава содержит описание этих программных интерфейсов.
Программные интерфейсы приложений MySQL
Начнем с основ. Что такое программный интерфейс приложения (API-интерфейс)?
С технической точки зрения программный интерфейс - это "опубликованная спецификация, которая описывает, как программист может делать запросы к базе данных MySQL". Иными словами, API-интерфейс - это интерфейс, канал, по которому проходит связь, между двумя или более приложениями. Обычно он состоит из предписанных функций или методов, которые программист может вызывать для получения определенных результатов или режима работы. Программный интерфейс представляет собой эффективный согласованный механизм многократного использования для создания связи между разными составляющими приложения или между целыми приложениями.
Одним из самых известных примеров программного интерфейса является программный интерфейс Microsoft Windows, используемый почти каждым существующим приложением Windows. Этот программный интерфейс открывает функции и методы, необходимые для создания окна приложения, построения меню, манипуляций с файлами, распределения памяти и, как правило, для взаимодействия с операционной системой (ОС) множеством разных способов.
Разработчики MySQL всегда внедряли свои продукты с помощью программных интерфейсов MySQL. Первый примитивный интерфейс был доступен уже в версии 3.19.
С годами он постепенно перерос в мощный полнофункциональный инструментарий для создания управляемых данными приложений. Сегодня доступны программные интерфейсы к MySQL для множества разных языков, включая C, Java, PHP, Perl и Python (некоторые из них обсуждаются в последующих главах).
Для полного понимания ценности программного интерфейса MySQL, поучительно будет взглянуть на сценарий, где его нет. Без программного интерфейса, позволяющего разработчикам подключаться к серверу базы данных, выполнять запросы и обрабатывать результаты, все взаимодействие пришлось бы выполнять через клиентские утилиты, среди которых следует отметить клиентскую программу mysql (на данный момент это единственная утилита в пакете MySQL, которая позволяет выполнение произвольных запросов).
В чем же проблема? Клиент mysql - это простая утилита, которая только выполняет SQL-запросы и возвращает результаты в табличной форме. Она не позволяет производить сложные манипуляции, такие как анализ набора записей, форматирование записей в Web-страницу, подтверждение ввода, организация защиты подключений или контроль ошибок.
Поэтому требуется что-то более совершенное, особенно в контексте управляемых данными приложений, основанных на Web-технологии. Обычно у этих приложений особые требования к формату и представлению полученных данных, и им, возможно, потребуется высокий уровень избыточности, особенно если они имеют дело с объемными и/или сложными транзакциями. Например, коммерческий Web-узел или приложение типа B2B. Создание общего инструмента невозможно, вследствие того, что каждое приложение имеет свои особенности. Более эффективный подход - при необходимости предоставить программистам свободу доступа к нужным им функциям, с тем, чтобы они могли использовать эти функции по возможности любым способом, который они считают нужным для выполнения требований, предъявляемых к разрабатываемым ими приложениям.
Таким образом, открыв программный интерфейс, разрешающий разработчикам доступ ко всем функциям MySQL, разработчики MySQL предоставили не только прекрасное решение проблемы, но и осчастливили все сообщество открытых систем. Возросший уровень доступа к внутренним возможностям MySQL позволяет реализовать более мощные и творческие подходы при создании приложений.
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
Все о MySQL. Программный интерфейс MySQL
28-12-2009
<< Предыдущая статья | Следующая статья >> |
Все о MySQL. Команда start slave | Все о MySQL. Составляющие программного интерфейса приложений MySQL |