Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по серверам.doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
749 Кб
Скачать
☆
    1. Интерфейс прикладного программирования

Альтернативным подходом, используемым некоторыми разработчиками СУБД, является предоставление в распоряжение программиста библиотеки стандартных функций (API- программный интерфейс пользователя). Функции вызываются из создаваемых пользователем прикладных программ.

Хотя это не является требованием стандарта, многие распространенные СУБД включают соответствующие API. С помощью функций API осуществляется подключение к базе данных, например, ConnectBD(User,Passw), или dbopen((User,Passw) и построение SQL оператора (например, dbsqlexec()) и т.д.

Поставляемые разными разработчиками прикладные API имеют значительные различия. При необходимости использования одной и той же программы в среде разных СУБД необходимы разные ее версии, ориентированные на АPI разных СУБД.

Фирма Microsoft разработала стандарт ODBC (Open Database Connectivity). Эта технология предусматривает использование единого интерфейса для доступа к смешанным базам данных SQL. Данный интерфейс, который встраивается непосредственно в язык программирования (например, С) обеспечивает высокую степень универсальности, в результате чего одно и то же приложение может получать доступ к данным, хранящимся в базах различных целевых СУБД, без необходимости внесения изменений в текст программы.

В приложение, обращающееся к базе данных, записываются вызовы функций ODBC. Для каждой системы управления базами данных разрабатывается драйвер ODBC, реализующий эти функции для конкретной СУБД. Для связи приложения с любой выбранной целевой СУБД пользователю достаточно иметь соответствующий ODBC-драйвер. (Драйвер ОDBC для MS SQL Server устанавливается одновременно с установкой утилит сервера).

Утилита Источники данных ODBC позволяет настроить соединение ODBC для получения доступа к объектам баз данных. Для запуска утилиты следует выбрать соответствующий значок в панели управления Windows. Диалоговое окно утилиты открывает доступ к настройке трех типов источников данных (DSN – Data Source Name: системный DSN, файловый DSN и пользовательский DSN). Драйвер просматривает приложение, находит обращения к базе данных, передает их СУБД, получает от нее результаты и подставляет их в приложение. Идея оказалась очень удачной, и использование ODBC для работы с базами данных стало общепринятым.

    1. Архитектура odbc

В интерфейс ODBC включены следующие элементы:

  1. Библиотека функций, вызов которых позволяет подключаться к базе данных, выполнять SQL- операторы и извлекать информацию из результирующих наборов данных.

  2. Стандартный механизм подключения и регистрации в СУБД.

  3. Стандартное представление для данных различных типов.

  4. Стандартный набор кодов ошибок.

  5. Типовой синтаксис SQL-операторов, построенный на использовании спецификаций X/Open и ISO CLI.

Архитектура odbc

Рисунок 10

Общая архитектура ODBC (см. рисунок 15) включает 4 элемента:

  • Приложение, которое выполняет обработку данных и вызов функций библиотеки ODBC для отправки SQL- операторов в СУБД и выборки возвращаемой СУБД информации.

  • Менеджер драйверов – выполняет загрузку необходимых драйверов по требованию приложения. Менеджер драйверов был разработан компанией Microsoft и представляет собой библиотеку DLL.

  • Драйверы и агенты баз данных обрабатывают вызовы функций ODBC и направляют SQL-запросы конкретным источникам данных, а также возвращают полученные результаты приложению. При необходимости драйверы выполняют модификацию исходного запроса с целью приведения его в соответствие с синтаксическими требованиями целевой СУБД. Драйверы могут предоставлять только те возможности, которые обеспечиваются целевой СУБД. В архитектурном решении с использованием нескольких ODBC- драйверов все перечисленные задачи решаются самим ODBC-драйвером, и использовать агенты БД не требуется. В случае использования единственного драйвера для каждого типа СУБД потребуется применение агентов базы данных, размещаемого на стороне сервера. При обработке запросов на доступ к базе данных эти агенты тесно сотрудничают с ODBC драйвером, расположенным на стороне клиента. В среде Windows единый ODBC-драйвер реализован в виде библиотеки DLL. Агенты баз данных реализуются как процессы, выполняемые на сервере целевой СУБД.

  • Источники данных содержат те данные, доступ к которым необходим пользователю приложения.