Основы проектирования приложений баз данных

       

Библиотека MFC


Среда Visual Studio.NET предоставляет различные подходы для реализации работы с базами данных:

  • Применение библиотеки MFC (Microsoft Foundation Class Library).
  • Применение ATL (Active Template Library).
  • Использование библиотек Framework.

Библиотека MFC реализует поддержку доступа к базам данных, основанную на двух механизмах:

  • через ODBC-драйверы;
  • с применением провайдеров данных OLE DB.

Приложения, использующие доступ к базам данных с применением ODBC-драйверов, в обязательном порядке используют класс CDatabase для создания объекта "база данных" и класс CRecordset для создания объекта "результирующий набор".

Библиотека MFC предоставляет для работы с базами данных через ODBC-драйверы следующие классы:

  • CDatabase – класс, инкапсулирующий соединение с источником данных;
  • CRecordset – класс, инкапсулирующий работу с результирующим набором, включая переход между записями, добавление, удаление и изменение записей, задание фильтров и выполнение параметризированных запросов;
  • CRecordView – класс, предоставляющий средства визуального отображения данных из созданного результирующего набора;
  • CDBException – класс, предназначаемый для обработки ошибок, которые возникают при работе с источником данных;
  • CFieldExchange – класс, который поддерживает RFX обмен данными между полями – членами класса результирующего набора и столбцами таблицы источника данных.

Библиотека MFC предоставляет для работы с базами данных с применением провайдеров OLE DB класс COleDBRecordView, используемый для отображения данных из результирующего набора (представляемого классом CRowset) в элементах управления шаблона диалога. Этот класс объявляется в заголовочном файле afxoledb.h.

Для реализации клиентов и серверов OLE DB можно использовать ATL, предоставляющую OLE DB шаблоны как С++ шаблоны. Более подробно шаблоны ATL будут рассмотрены в следующей лекции.

Библиотека MFC предоставляет следующие два класса, упрощающие обмен данными:

  • CLongBinary – класс, предоставляющий средства работы с BLOB-объектами (Binary Large OBject), такими как bitmap-изображения, хранимыми в базе данных;
  • CDBVariant – класс, реализующий тип Variant, который позволяет сохранять информацию в базе данных, используя текущее значение, хранимое в переменной типа union.

Для доступа к конкретной базе данных требуется, чтобы был установлен соответствующий драйвер ODBC или OLE DB провайдер.

Приложения, работающие с базами данных, могут быть реализованы как консольные приложения, приложения с архитектурой документ-отображение (SDI- и MDI-приложения), приложения-диалоги, серверные приложения.



Содержание раздела