Источники данных odbc. Программное управление источниками данных ODBC

26.04.2019

В книге описывается сервер сценариев Windows Script Host (WSH) версии 5.6, который является одним из стандартных компонентов Windows ХР, а также может быть установлен в более ранних версиях Windows. Приводятся сценарии на языках VBScript и JScript, иллюстрирующие применение стандартных объектов WSH 5.6, включая создание из сценариев дочерних процессов и запуск сценариев на удаленных компьютерах. В качестве более сложных примеров рассматриваются сценарии, работающие с базами данных, управляющие приложениями Microsoft Office, организующие графический пользовательский интерфейс, использующие технологии ADSI (Active Directory Service Interface) и WMI (Windows Management Instrumentation) для решения задач администрирования. Освещены вопросы практической работы с XML-файлами и создания СОМ-объектов. Особое внимание уделяется вопросам безопасности при работе со сценариями, приводятся конкретные примеры настроек политик безопасности. К книге прилагается дискета с исходными текстами большинства примеров.

Книга:

Для получения доступа к созданной DBF-таблице из сценария WSH мы воспользуемся технологией ODBC (Open DataBase Connectivity). ODBC - это стандартное средство Microsoft для работы с реляционными базами данных различных форматов и производителей, способное обрабатывать запросы к базам на языке SQL (Structured Query Language, язык структурированных запросов).

Замечание

Для начального ознакомления с языком SQL можно порекомендовать книгу .

Вначале нам понадобится завести в системе ODBC-запись для связи с нашей базой, т.е. создать новый DSN (Data Source Name, имя источника данных). В Windows ХР это делается следующим образом.

Загрузим Панель управления (Control Panel) Windows (меню Пуск (Start)) и переключимся к классическому виду (рис. 9.6).


Рис. 9.6. Классический вид панели управления Windows ХР

Последовательно выберем пункты Администрирование (Administrative tools) и Источники данных (ODBC) (Data sources (ODBC)). В появившемся диалоговом окне выберем вкладку Системный DSN (System DSN), что позволит создать DSN, доступный всем пользователям компьютера (рис. 9.7).


Рис. 9.7. Администратор источников данных ODBC в Windows ХР

Нажмем кнопку Добавить (Add) и в появившемся окне выберем драйвер Microsoft dBase Driver (*.dbf) (рис. 9.8).

Open Database Connectivity (ODBC) - это протокол, используемый для подключения базы данных Microsoft Access к внешнему источнику данных, например Microsoft SQL Server. В этой статье содержатся общие сведения об источниках данных ODBC, способах их создания и подключения к ним с помощью Microsoft Access. Действия, которые требуется выполнить, зависят от используемых баз данных и драйверов ODBC.

В этой статье

Сведения об источниках данных ODBC

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

В архитектуре ODBC приложения (такие как Access) подключаются к диспетчеру драйверов ODBC, который, в свою очередь, использует конкретный драйвер ODBC (например, Microsoft SQL ODBC) для подключения к источнику данных. В Access источники данных ODBC используются для подключения к внешним источникам данных, у которых нет встроенных драйверов.

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

    Установите соответствующий драйвер ODBC на компьютере с источником данных.

    Определите имя источника данных (DSN) с помощью программы Администратор источников данных ODBC , чтобы сохранить сведения о подключении в реестре Microsoft Windows или DSN-файле, либо с помощью строки подключения в коде Visual Basic, чтобы передать сведения о подключении непосредственно диспетчеру драйверов ODBC.

Машинные источники данных

Машинные источники данных хранят сведения о подключении в реестре Windows на определенном компьютере. Такие источники данных можно использовать только на компьютере, на котором они определены. Есть два типа машинных источников данных: пользовательские и системные. Пользовательские источники данных доступны и отображаются только для текущего пользователя. Системные источники данных могут использовать все пользователи компьютера. Они отображаются для всех этих пользователей и системных служб. Машинные источники данных особенно полезны, когда требуется обеспечить дополнительную защиту, поскольку машинный источник данных могут просматривать только вошедшие в систему пользователи. Кроме того, такой источник нельзя удаленно скопировать на другой компьютер.

Файловые источники данных

Файловые источники данных (также называемые DSN-файлами) хранят сведения о подключении в текстовых файлах, а не в реестре Windows, и, как правило, более гибки в использовании, чем машинные источники данных. Например, файловый источник данных можно скопировать на любой компьютер с подходящим драйвером ODBC, чтобы обеспечить в приложении точность и согласованность сведений о подключении ко всем используемым компьютерам. Кроме того, можно поместить файловый источник данных на отдельный сервер, сделать его общим для нескольких компьютеров в сети и легко управлять централизованными сведениями о подключении.

Некоторые файловые источники данных нельзя сделать общими. Такие источники располагаются на отдельном компьютере и указывают на машинный источник данных. Их можно применять для доступа к существующим машинным источникам данных из файловых источников данных.

Строки подключения

В модуле можно определить форматированную строку со сведениями о подключении. Строка подключения передает сведения о подключении непосредственно диспетчеру драйверов ODBC. Это помогает упростить приложение, устраняя необходимость создания DSN администратором или пользователем перед использованием базы данных.

Дополнительные сведения об интерфейсе ODBC см. в разделе MSDN Справочник программиста по ODBC .

Добавление источника данных ODBC

Прежде чем продолжить, установите подходящий драйвер ODBC для источника данных, к которому нужно подключиться.

Примечание: Для добавления или настройки источника данных ODBC необходимо входить в группу администраторов локального компьютера.

Для получения дополнительных сведений об отдельных параметрах нажмите кнопку Справка в диалоговом окне ODBC.

Страница 13 из 17

Где хранятся настройки об источнике данных ODBC?

В предыдущих шагах "Установка соединения" и "Продолжаем устанавливать соединение" мы с Вами пользовались утилитой Администратор ODBC для настройки соединения. Мы его находили в панели управления. На самом деле это обычная программа Odbcad32.exe , которая находится по определенному пути. Тo есть ее можно напрямую запускать из программы и требовать, чтобы пользователь установил данные. Но есть и другой выход. Данные о на строке источников ODBC хранятся в реестре в разделе SOFTWARE/ODBC .

Вот эти данные. Мы теперь можем при желании вручную их править или программным путем, прося пользователя только указать файл. Итак, путь такой:

HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI\

Еще один способ программно воздействовать на настройки драйверов ODBC - это использовать функцию SQLConfigDataSource() .

Итак мы может настраивать ODBC следующими методами:

  • Утилита администрирования.
  • Реестр.
  • Функция SQLConfigDataSource() .

Функция SQLConfigDataSource()

Эта функция имеет следующий вид:

BOOL SQLConfigDataSource
HWND hwndParent,// Указатель на окно вызвавшее функцию
WORD fRequest,// Тип запроса
LPCSTR lpszDriver,// Пользовательское имя драйвера
LPCSTR lpszAttributes// атрибуты
);

Функция ворачивает TRUE , если выполнена удачно и FALSE если не удачно. Атрибут описывает тип команды и может быть следующим:

  • ODBC_ADD_DSN - Добавляем новый источник данных пользователя.
  • ODBC_CONFIG_DSN - Выбор конфигурации существующего источника данных пользователя.
  • ODBC_REMOVE_DSN - Удаляем существующий источник данных пользователя.
  • ODBC_ADD_SYS_DSN - Добавляем новый источник данных системы.
  • ODBC_CONFIG_SYS_DSN - Изменяем существующий источник данных системы.
  • ODBC_REMOVE_SYS_DSN - Удаляем существующий источник данных системы.
  • ODBC_REMOVE_DEFAULT_DSN - Удаляем заданный по умолчанию раздел спецификации источника данных из системы

Давайте попробуем???

// TestConfig.cpp: Defines the entry point for the console application.
//

#include "stdafx.h"
#include "windows.h"
#include "odbcinst.h"
#include "iostream.h"

void main()
{
if (!SQLConfigDataSource(NULL,ODBC_ADD_DSN,
"Microsoft Excel Driver (*.xls)",
"DSN=New Excel Data Source\0"
"Description=New Excel Data Source\0"
"FileType=Excel\0"
"DataDirectory=C:\\ExcelData\0"
"MaxScanRows=20\0"))
{
cout << "Error config ODBC" << endl;
}
}

Только для того, чтобы его увидеть надо сначало закрыть панель управления, а потом опять открыть. После этого вы увидите, что новый источник данных добавлен.

Создание приложения, использующего БД

Аннотация к подразделу

Смысл подраздела – обеспечение выполнения лабораторной работы по созданию приложения БД ·

Для работы с базами данных часто используют псевдонимы (alias). Псевдоним БД - это имя некоторой базы данных, которое прописывается в настойках таким образом, что для обращения к таблицам данной базы достаточно указать alias. Это удобство позволяет легко менять тип БД, не меняя текста программ.

Рассмотрим принцип определения псевдонима БД Microsoft Access, хранящейся в файле на жеском диске. Предположим, мы хотим, чтобы псевдоним borey соответствовал БД в файле borey.mdb. Программно мы можем это сделать, используя функцию SQLConfigDataSource ODBC API.

Для того чтобы задать псевдоним в ручном режиме необходимо запустить Администратор источников данных ODBC (Пуск \ Настройка \ Панель управления \ Администрирование \ Источники данных (ODBC)). Окно администратора показано на рисунке 6.

Рисунок 6 – Администратор источников данных ODBC

Далее на вкладке «Пользовательский DSN» или «Системный DSN» (в зависимости от того, создается ли источник данных для текущего пользователя или для всех пользователей системы соответственно) нажать кнопку «Добавить». ·

Отобразится список установленных драйверов и их описание (рисунок 7).

Рисунок 7 – Администратор источников данных ODBC. Диалог создания нового источника данных

·После нажатия на кнопку "Готово" в открывшемся окне (рисунок 8) необходимо указать имя источника "db" и путь к файлу.

Рисунок 8 – Администратор источников данных ODBC. Диалог создания нового источника данных

·Нажатием кнопки "Ок" в системе появится псевдоним «borey» к БД, который можно будет использовать при обращении к файлу borey.mdb (рисунок 9). Следует заметить, что аналогичным образом можно указать псевдоним и к другим СУБД.

Рисунок 9 – Администратор источников данных ODBC. Диалог создания нового источника данных

2.2 Базовые сведения о языке C++ (wikipedia)

·С++ – компилируемый статически типизируемый язык программирования общего назначения.

Поддерживает следующие парадигмы программирования:

Процедурное программирование,

Объектно-ориентированное программирование,

Обобщённое программирование.

Обеспечивает:

Модульность,

Раздельную компиляцию,

Обработку исключений,

Абстракцию данных,

Объявление типов (классов) объектов,

Встраиваемые функции,

Виртуальные функции. ·

Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником – языком C, – наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Синтаксис C++ унаследован от языка C.



Последний стандарт языка C++, который получил название «C++11» принят в 2011 г. В него были включены существенные дополнения в ядро языка и расширение стандартной библиотеки. ·