к оглавлению

Функции, с которыми нам придется работать в ODBC

Естественно, я не буду рассказывать обо всех функциях, с помощью которых можно сделать с ODBC все, что угодно. Поверьте, их очень много. Нам же для нашей практической задачи достаточно будет всего четырех:

1. Функция SQLDataSources возвращает список всех источников данных ODBC.

   RETCODE SQLDataSources(HENV hEnv, UWORD fDirection, UCHAR * szDSN, 
      SWORD cbDSNMax, SWORD *pcbDSN, UCHAR * szDescription, 
      SWORD cbDescriptionMax, SWORD * pcbDescription );

2. Функция SQLConfigDataSources добавляет, изменяет или удаляет указанный источник данных.

   BOOL SQLConfigDataSources(HWND hwndParent, WORD fRequest, 
      LPCSTR lpszDriver, LPCSTR lpszAttributes)

Приведем несколько примеров строки атрибутов, чтобы вам было понятно, что это такое:

"DSN=MySource\0UID=MyLogin\0PWD=MyPass" - источник данных с именем MySource, логин - MyLogin, пароль - MyPass

Каждый драйвер "понимает" свои ключевые слова, чаще всего применяются:

  PWD - пароль
  UID - логин
  DSN - имя источника данных
  DATABASE - имя базы данных
  SERVER - имя сервера, на котором находится база данных

Для баз данных Microsoft Access для указания имени БД вместо DATABASE используется ключевое слово DBQ.

3. Функция SQLAllocEnv создает новый хэндл для использования в других функциях и инициализирует интерфейс для работы с ODBC

       RETCODE SQLAlocEnv(HENV * hEnv)

hEnv - указатель на переменную, которая будет хранить созданный хэндл в случае удачного выполнения функции

4. Функция SQLFreeEnv удаляет заданный хэндл и освобождает всю память, ассоциированную с ним.

      RETCODE SQLFreeEnv(HENV hEnv)
к оглавлению

Знаете ли Вы, что спецификация - это документ, описывающий соглашение между разработчиками и пользователями. Разработчик берется написать модуль, а пользователь соглашается не полагаться на знания о том, как именно этот модуль реализован, т.е. не предполагать ничего такого, что не было бы указано в спецификации. Такое соглашение позволяет разделить анализ реализации от собственно использования программы. Спецификации дают возможность создавать логические основы, позволяющие успешно "разделять и властвовать".

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution