Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Підключення до джерела даних




Реалізація ODBC

Краще всього, вважаємо, розглянути цю тему, розділивши всі функції ODBC на логічні групи, відповідні порвдку, в якому їх зазвичай застосовують при розробці додатки.

- Настройка ODBC.

- Підключення до джерела даних.

- Запит даних і джерело даних.

- Підготовка і виконання запитів SQL.

- Отримання даних.

- Відключення від джерела даних.

 

Як тільки утиліта ODBC Data Source Administrator завершить настройку DSN, до вказаної в нім бази даних можна буде звернутися за допомогою функцій API ODBC. Першим етапом програмного доступу до даним ODBC є підключення до джерела даних. Для цього знадобиться декілька викликів функцій. Щоб підключитися до джерела даних необхідно зробити наступні дії.

1. Ініціалізуйте ODBC і отримайте унікальний дескриптор середовища (unique environment handle) або henv. Цей дескриптор унікально ідентифікує потік, використовуючий ODBC. Щоб отримати дескриптор для поточного потоку, викличте функцію SQLAllocHandle.

Як можна відмітити в приведеному нижче фрагменті коду, додаток спочатку оголошує змінну henv типу SQLHENV, а потім викликає функцію SQLAllocHandle, передавши їй як аргумент адреса тільки що оголошеної локальної змінної henv.

 

SQLHENV henv;

SQLRETURN re = SQLAllocHandle(SQL_HANDLE_ENV

SQL_NULL_HANDLE

shenv);

 

2. Отримавши дескриптор середовища, слід встановити версію ODBC, з якою сумісний додаток. Для цього застосовується функція SQLSetEnvAttr. При виклику цієї функції з додатку їй передають константу SQL_ATTR_ODBC_VERSXON, щоб вказати, що мова йде про підтримуваною версією ODBC. У приведеному нижче примі ре їй передається також константа SQL_OV_ODBC3, вказуюча, що додаток підтримує ODBC версії 3.0;

 

SQLSetEnvAttr(henv

SQL_ATTR_ODBC_VERSION, (SQLPOINTER) SQL_OV_ODBC3, SQL_IS_INTEGER};

 

3. Перш ніж додаток зможе підключитися до джерела даних, воно повинне отримати від ODBC дескриптор підключення до бази даних (database connection handle) або hdbc. Для цього застосовується функція SQLAllocHandle, якою передають як перший аргумент константу SQL HANDLE HDBC. Другим аргументом повинен бути реальний дескриптор henv, отриманий на етапі 1. Третій і останній аргумент— покажчик на змінну типу SQLHDBC. Приведений нижче фрагмент коди демонструє стандартне звернення до функції SQLAllocHandle, що дозволяє отримати дескриптор бази даних (database handle):

 

SQLHDBC hdbc;

SQLRET0RN re = SQLAllocHandle(SQL_HANDLE_ENV henv &hdbc);

 

4. Отримавши дескриптор hdbc, можна, нарешті, підключитися до джерела даних, використавши будь-яку з трьох функцій ODBC: SQLConnect, SQLDriverConnect або SQLBrowseConnect.

•Функція SQLConnect— це найпростіший спосіб підключення до джерела даних. Їй досить передати DSN, ідентифікатор користувача і пароль для підключення до джерела даних ODBC.

•Функція SQLDriverConnect— альтернативний варіант для драйверів ODBC. Вона вимагає передачі докладнішій інформації, ніж функція SQLConnect.

•функція SQLBrowseConnect— це засіб підключення до джерела даних, що володіє найбільшими можливостями. За допомогою одного або декількох звернень до функції SQLBrowseConnect (у циклі) можна запитати і отримати всю інформацію, необхідну для підключення до джерела даних. Для забезпечення такого підходу функція SQLBrowseConnect повертає значення SQL_NEEDS_DATA до тих пір, поки додаток не надасть всю інформацію, необхідну для підключення до джерела даних, і лише тоді вона поверне значення SQL_SUCCESS.

Щоб зосередитися на важливіших темах ODBC, тут, і в подальших демонстраційних застосуваннях, використовуватиметься найпростіша функція — SQLConnect. Нижче приведений приклад використання функції SQLConnect для підключення до джерела даних на ім'я VCNET Bible. Звернете увагу, константа SQL_NTS повідомляє ODBC про те, що попередній переданий аргумент є рядком із завершуючим нульовим символом.

 

SQLRETURN re = SQLConnect(hdbc

(SQLCHAR*)"VCNET Bible", SQL_NTS

(SQLCHAR*)"", SQL_NTS, (SQLCHAR*) "", SQL_NTS);

 

Підключившись до DSN за допомогою однієї з цих функцій, можна перейти до наступного логічного кроку — запиту даних.

 




Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 292; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



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




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