![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Интерфейсы программирования приложений БД (API)
Недостатки обычного программного SQL. Как замечено выше, программный SQL характеризуется наличием некоторых специальных инструкций, а также механизмом трансляции и выполнения запросов. Таким образом, для применения программного SQL в тексте программы необходимо использовать специальный препроцессор для преобразования инструкций программного SQL в вызовы СУБД, а также ознакомиться с некоторым специфическим набором инструкций. Стоит заметить, что в разных СУБД эти наборы инструкций могут несколько отличаться друг от друга. В результате возникает некоторая проблема, связанная с отсутствием переносимости программы. Описание подхода. Наряду с описанным выше механизмом существует и активно применяется еще один подход, связанный с наличием специальных интерфейсов – API для связи прикладной программы с СУБД (application programming interface – интерфейс программирования приложений). Эти API (далее – SQL API) представляют собой библиотеки функций, разработанные для обеспечения связи прикладной программы с СУБД посредством выполнения SQL-запросов. Прикладная программа вызывает специальные функции библиотеки для передачи в СУБД SQL-запроса в текстовом виде и для получения результатов выполнения запросов, а также различные служебные функции. Достоинства подхода. Использование SQL API, вообще говоря, является широко используемым и стандартным подходом, поэтому для специалистов этот подход является вполне привычным. Программа, содержащая вызовы некоторых функций API, ничем не отличается по схеме компиляции и выполнения от обычной программы. Так, подобная программа не требует применения специализированного препроцессора.· Существует множество библиотек, предоставляющие возможности SQL API. Принципы работы разных библиотек, как правило, аналогичны. Схема работы приложения совместно с SQL API выглядит следующим образом: 1) программа получает доступ к БД путем вызова одной или нескольких API-функций, подключающих программу к СУБД и к конкретной БД; 2) для пересылки инструкций SQL в СУБД программа формирует инструкцию в виде текстовой строки и затем передает эту строку в качестве параметра при вызове API-функции; 3) программа вызывает выполнение API-функции для проверки состояния переданной в СУБД инструкции и обработки ошибок; 4) если инструкция SQL представляет собой запрос на выборку, то, вызывая API-функции, программа записывает результаты запроса в свои переменные; обычно за один вызов возвращается одна строка или столбец данных; 5) свое обращение к базе данных программа заканчивает вызовом API-функции, отключающей ее от СУБД.· Из имеющихся для реализации SQL-запросов интерфейсов API на настоящий момент выделилось несколько распространенных библиотек: - DB-Library – служит для совместной работы с Microsoft SQL Server; - ODBC (Open Database Connectivity) – служит для доступа к различным БД; - OCI (Oracle Call Interface) – для доступа к БД Oracle; - JDBC (Java DataBase Connectivity) – платформенно-независимый промышленный стандарт взаимодействия Java-приложений с различными СУБД - и т.д. Далее будем рассматривать ODBC как один из самых распространенных интерфейсов.· 1.6 Интерфейс ODBC ODBC (Open Database Connectivity) – это программный интерфейс (API) доступа к БД, разработанный фирмой Microsoft, в сотрудничестве с Simba Technologies на основе спецификаций Call Level Interface (CLI). CLI разрабатывался организациями SQL Access Group, X/Open и Microsoft. Впоследствии CLI был стандартизован ISO. Стандарт CLI призван унифицировать программное взаимодействие с СУБД, сделать его независимым от поставщика СУБД и программно-аппаратной платформы.Организация работы с БД в приложениях. В начале 1990 г. существовало несколько поставщиков баз данных, каждый из которых имел собственный интерфейс. Если приложению было необходимо общаться с несколькими источниками данных, для взаимодействия с каждой из баз данных было необходимо написать свой код. Компания Microsoft и ряд других компаний сделали важный шаг к решению этой проблемы. Основная идея заключалась в разработке универсального интерфейса на уровне семейства операционных систем Windows, который мог бы быть поддержан в разных СУБД. Этот интерфейс был назван Open Database Connectivity, или открытый механизм взаимодействия с базами данных.· Рассмотрим кратко структуру программного обеспечения ODBC: - интерфейс вызовов функций ODBC: это так называемый верхний уровень ODBC, содержащий API, который и используется непосредственно приложениями. Данный API в частности реализован в виде библиотеки динамической компоновки Dll и входит в состав операционной системы Windows; - драйверы ODBC: это так называемый нижний уровень ODBC, содержащий набор драйверов для СУБД, поддерживающих протокол ODBC. В рамках технологии для каждой СУБД может быть разработан соответствующий ODBC-драйвер, который будет являться промежуточным звеном между прикладной программой и СУБД, транслируя вызовы функций СУБД в вызовы внутренних специализированных функций СУБД. Таким образом решается проблема стандартизации. Для многих современных СУБД существуют специализированные драйверы ODBC, отдельно устанавливаемые в операционную систему; - диспетчер драйверов ODBC: данный программный механизм представляет средний уровень ODBC, управляя процессом загрузки необходимых драйверов. Схема выполнения программы с использованием протокола ODBC для доступа к данным приводится на рисунке 5. Рисунок 5 – Схема выполнения программы со встроенными инструкциями динамического SQL с применением двухэтапной схемы ·
Дата добавления: 2015-05-09; Просмотров: 1128; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |