Студопедия

КАТЕГОРИИ:


Архитектура-(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; Просмотров: 1098; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.