ПОДДЕРЖКА БАЗ ДАННЫХ
11.1. Технологии доступа к данным
В Visual C++ имеются технологии доступа к данным, обеспечивающие создание приложений для работы с базами данных. «Количество доступных Windows-приложениям интерфейсов доступа к данным может показаться чрезмерным. Какую же из технологий с загадочными именами – DAO, ODBC, RDO, UDA, OLE DB или ADO – выбрать для построения конкретного приложения» [л.10,стр. 242]. Большинство технологий доступа базируются на двух ключевых технологиях: ODBC (Open Database Connectivity – открытая связь с базами данных) и DAO (Data Access Object – объекты доступа к данным).
Сравнительные параметры технологий ODBC и DAO могут быть представлены следующим образом:
Параметр |
ODBC |
DAO |
Архитектура |
Набор DLL-модулей,драйверы |
Набор объектов OLE |
Источники данных |
Файлы БД любых форматов , а также SQL Server и Oracle |
Файлы БД формата .mdb, Access, FoxPro, Paradox |
Соединение с базой данных |
Объект класса CDatabase |
Объект класса CDaoDatabase |
Выборка данных |
Объект класса Crecordset |
Объект класса CDaoRecordset |
Просмотр данных |
Объект класса CrecordView |
Объект класса CDaoRecordView |
Набор функций |
Меньший набор функций, чем в DAO |
Большой набор функций, нет аналогов в ODBC |
Между технологиями ODBC и DAO есть много общего, например, использование классов MFC с похожими функциями для выполнения одинаковых операций соединения с БД, выборки набора записей БД и просмотра их. Но классы DAO содержат больший набор функций, а также функции, не имеющие аналогов в ODBC.
Есть и существенные различия. Это касается архитектуры технологий в реализации системных библиотек. Классы ODBC реализованы как набор DLL-модулей, называемых драйверами (DLL, Dinamic-Link Library – динамически подключаемые библиотеки). А классы DAO реализованы как набор объектов OLE, что более современно.
Еще существенное различие технологий заключается в их использовании для источников данных. В настоящее время разработано достаточно большое количество ODBC-драйверов для различных СУБД. Поэтому, ODBC может использоваться для файлов БД различных форматов, а DAO – только , в основном, для файлов БД формата .mdb. При этом приложение на основе ODBC может одновременно работать с различными СУБД без перекомпиляции за счет динамической загрузки драйверов.
11.2. Создание приложения с базой данных
Создание приложения для работы с базой данных на основе технологий ODBC или DAO требует выполнения следующих этапов:
- Установление доступа к базе данных. Этап заключается в регистрации заданной базы данных, как источника данных.
- Создание заготовки приложения. Этап выполняется автоматически с помощью мастера AppWizard при выполнении 6 этапов настройки приложения с выбором технологии доступа к источнику данных ODBC или DAO.
- Реализация операций с базой данных. Этап выполняется с использованием классов MFC соответствующей технологии доступа к данным.
Цель работы - создание приложения, выполняющего операции с базой данных: просмотр, добавление, удаление.
Воспользуемся файлом db.mdb, который представляет собой базу данных, созданную в СУБД Access. Файл содержит сведения о студентах: Name (Имя), Grade (Курс). Файл можно скачать по адресу ftp://ftp.sybex.com/2120/vcpp.exe [л.13,стр. 415]. Можно создать собственный файл в любой программе для работы с базами данных.
Пусть экранная форма отображения содержимого базы данных данных будет выглядеть следующим образом:
Untitled – Lab11 |
File Edit Record View Help |
[ ] [ ] [ ] [ ] [|<] [<] [>] [>|] |
Students: Name Ann Grade B__ |
Для установления доступа к базе данных, как к источнику данных, выполнить следующие действия:
- Создать папку Dbase и скопировать в нее файл db.mdb. Если создан собственный файл данных, то скопировать его.
- Щелкнуть последовательно Пуск, Настройка, Панель управления. В окне Панели управления дважды щелкнуть на 32-Bit ODBC. Появится окно Источники данных - Data Source Administrator.
- Щелкнуть на кнопке Add. Раскроется окно Create New Data Source со списком драйверов. Выбрать Microsoft Access Driver (.mdb) и щелкнуть на кнопке Finish. Появится окно ODBC Microsoft Access 7.0 Setup.
- Ввести в поле Data Source Name (Имя источника данных) значение Students, а в поле Description (Описание) – значение Name_Grade. Если создан собственный файл данных, то ввести соответствующие значения.
- Щелкнуть на кнопке Select. Раскроется окно Select Database (Выбор базы данных). Выбрать файл db.mdb или собственный файл.
- Щелкнуть на кнопке OK. Появится окно ODBC Microsoft Access 7.0 Setup. Щелкнуть на кнопке OK, и затем – на кнопке OK в окне ODBC Data Source Administrator.
Итак, установлен доступ к файлу базы данных db.mdb (или к собстенному файлу) с помощью ODBC-драйвера Microsoft Access Driver (.mdb).
Для создания приложения выполнить следующие действия:
- Выбрать команду File->New и вкладку Projects. Появится окно New Project со списком типов приложений.
- Выбрать из списка MFC Appwizard (exe). В поле Project name ввести имя проекта Lab11. В поле Location указана папка для хранения проекта (по умолчанию – то же, что и имя проекта). Щелкнуть на ОК.
- Выполнить 6 этапов настройки создаваемого приложения. На 1-ом этапе выбрать SDI (Single Document Interface) – одно открытое окно и щелкнуть на Next.
- 2-ой этап – работа с базами данных. Переключатель Header files only (только файлы заголовков) предполагает только доступ к базам данных, Database view without file support – просмотр базы данных без поддержки операций с файлами (можно обновлять записи), Database view with file support - просмотр базы данных и поддержка операций с файлами (работа с множеством документов) . В нашем примере установить переключатель Database view with file support. Для соединения приложения и источника данных щелкнуть на кнопке Data Source (Источник данных).
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.