Шаг 108.
Среда программирования Visual C++.
Open Database Connectivity

    На этом шаге мы дадим краткую характеристику ODBC.

    Open Database Connectivity (ODBC) представляет собой API для доступа к клиент-серверным источникам данных, таким, как SQL Server и Oracle. Стандартный ODBC-интерфейс обеспечивает высокую степень универсальности приложения - один и тот же код применяли взаимодействия с различными типами СУРБД.

    Это позволяет разработчикам создавать и продавать клиент-серверные приложения, не ориентируясь на какую-то определенную СУРБД, а значит, не тратя силы и время на учет особенностей конкретных платформ серверов баз данных, с которыми работает приложение. ODBC-драйверы - все, что нужно такому приложению для взаимодействия с внешним источником данных. Эти драйверы в соответствии с открытым стандартом ODBC создают либо сами поставщики СУРБД, либо сторонние разработчики.

    Возможности различных СУРБД иногда существенно отличаются. Кроме того, в ODBC-драйвере допускается реализация только некоторых из всех допустимых функций. По этой причине в ODBC определены три уровня соответствия (conformance) драйвера, позволяющие приложению узнавать о наборе функций, доступных в конкретном драйвере:

    Более подробную информацию об уровнях соответствия ODBC Вы найдете, выполнив в справочной системе Visual C++ поиск по словосочетанию "Interface conformance levels".

    Для установки и настройки ODBC-драйверов служит утилита ODBC Data Sources из Control Panel (Панели управления). Она же предназначена и для регистрации нового имени источника данных (Data Source Name, DSN) - уникального набора сведений, необходимых диспетчеру ODBC-драйверов для подключения приложения к конкретной базе данных, поддерживающей ODBC. Имя источника регистрируется в системе, которая будет обращаться к БД, и хранится либо в файле [файловое DSN (file DSN)], либо в реестре [машинное DSN (machine DSN)]. Машинное DSN можно задавать как для каждого пользователя [пользовательское DSN (user DSN)], так и для всех пользователей данного компьютера [системное DSN (system DSN)]. На рисунке 1 показана утилита ODBC Data Source Administrator с несколькими зарегистрированми источниками данных.


Рис.1. Утилита ODBC Data Source Administrator

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

    ODBC предоставляет библиотеку курсоров (cursor library) с курсорами прокрутки для драйверов, поддерживающих базовое соответствие ODBC. Они применяются для просмотра набора записей из базы данных.

    ODBC API можно также использовать в C++ для подключения к базе данных, отправки SQL-запросов, получения результатов или ошибок, отключения и т.п. ODBC API - хорошо документированная технология создания клиент-серверных приложений, но она довольно сложна и требует достаточно объемного кода. Вот почему обьектные модели ADO, RDO или MFC-классы ODBC применяются значительно чаще.

    Со следующего шага мы начнем более детально знакомиться с утилитой ODBC Data Source Administrator.




Предыдущий шаг Содержание Следующий шаг