Преимущества использования стандартных интерфейсов
Обе технологии разрабатываются компанией Microsoft. Основное их предназначение - это изолировать клиента от особенностей реализации источника данных, предоставив ему стандартный интерфейс доступа.
Можно выделить следующие преимущества такого подхода:
Независимость клиентского приложения от деталей реализации источника данных.
Легкий переход между версиями серверов баз данных.
Возможность работы приложения с несколькими серверами баз данных.
Поддержка со стороны большого числа средств разработки.
Идея состоит в том, что разработчикам легче реализовать один стандартный интерфейс, чем поддерживать множество базы данных с различным API.
Что такое ODBC драйвер?
ODBC - Open Database Connectivity ("Открытый интерфейс взаимодействия с базой данных")
ODBC драйвера были одной из первых попыток Microsoft стандартизировать механизмы доступа к данным.
ODBC драйвер представлял собой реализацию ODBC API на языке C. Вызовы ODBC API транслировались на API конкретной базы данных.
Достоинство технологии - это её кросс-платформенность. Сторонняя разработка unixODBC позволяет использовать ODBC драйвера на Unix .
позволяет использовать ODBC драйвера на .позволяет использовать ODBC драйвера на .
Источники данных ODBC
Всю информацию об источниках данных и ODBC драйверах Windows хранит в реестре. Обращение к БД происходит по имени зарегистрированного источника данных DSN (Data Source Name ), Таким образом, перед использованием источник данных необходимо зарегистрировать на компьютере пользователя .
Зарегистрировать новое подключение можно через "Администратор источника данных" (Control Panel->Administration->Источники данных ODBC).
Альтернатива ODBC - OLE DB провайдер.
OLE DB (или OLEDB) - Object Linking and Embedding, Database. Технология OLE DB появилась позже ODBC и стала развитием идей корпорации Microsoft о стандартных интерфейсах доступа к данным.
OLE DB, в отличие от ODBC, является объектно-ориентированным API , основанным на COM-интерфейсах.
OLE DB провайдеры могут работать не только с реляционными базами данных, но и с любой другой информацией которую можно представить в табличном виде. Например: OLE DB провайдер для служб каталогов или Jet OLE DB провайдер, позволяющий извлекать данные из Excel и Outlook.
Справка:
Источники данных OLE DB
Для подключения через OLE DB не требуется регистрация источника данных в системе , как это принято в ODBC. Вся информация хранится либо в файлах с расширением udl, либо указывается непосредственно в строке подключения.
Для редактирования подключения OLE DB с расширением udl ассоциирован редактор связей с данными Data Link. Он поддерживает расширенную настройку провайдера данных за счет включения в свой интерфейс дополнительных страниц, о которых ему сообщает выбранный OLE DB провайдер.
Чтобы запустить редактор Data Link создайте пустой файл с расширением udl и запустите его на выполнение.
доступна через IBProvider - OLE DB провайдер для Firebird и Interbase. доступна через IBProvider - OLE DB провайдер для Firebird и Interbase.
ADO и DAO
DAO - это Data Access Objects (объекты доступа к данным). Библиотека позволяла работать с базами данных через ODBC драйвера. Разработка технологии прекращена в 2001 году.
ADO - ActiveX Data Objects (ActiveX-объекты для доступа к данным). Библиотека для работы с OLE DB провайдерами. Приобрела большую популярность среди разработчиков Windows-приложений, т.к. обладает более простым высокоуровневым интерфейсом чем OLE DB.
Компоненты ADO спроектированы достаточно хорошо, по многим возможностям даже превосходят более новую технологию ADO .Net. К примеру, в ADO .Net отсутствует возможность Fetch Backwards для курсоров, нет стандартного способа прочитать и записать свойства OLE DB, не реализована поддержка параллельных транзакций в одном подключении.
Библиотека ADO поддерживается следующими средствами:
в Visual Studio: Visual C++ и Visual Basic;
Microsoft Office, Visual Basic For Applications.
Скриптовые языки VBcript, JavaScript, WSH
Остальные, поддерживающие COM.
И ADO и DAO входят в состав MDAC - Microsoft Data Access Components.
. .
. .
Microsoft MS SQL Server
SQL Server позволяет обращаться из Transact SQL к базам данных других серверов, включая Firebird и Interbase через технологию Linked Server.
Linked Server взаимодействует только с OLE DB провайдерами и не поддерживает ODBC дравейра.
Для того чтобы испольовать ODBC драйвер, необходимо подключать дополнительный слой - OLE DB провайдер для ODBC драйверов и организовывать подключение типа Firebird/Interbase -> ODBC -> OLEDB ->MS SQL Linked Server. Данная схема будет не совсем эффективной и скорее является временным решением, чем постоянным.
Microsoft в своих решениях постепенно отказывается от поддержки стандарта ODBC, предлагая взамен OLE DB и ADO .Net провайдеры.
- проект не поддерживается с марта 2005 года.- проект не поддерживается с марта 2005 года.
ODBC драйвера Easysoft распространяются отдельно для Firebird и отдельно для Interbase:
На сайте Easysoft достаточно внушительный список ODBC драйверов, но нет информации о дате последних обновлений драйверов для Firebird и Interbase. Судя по номерам поддерживаемых версий, изменения происходили достаточно давно.
В состав решения входят сразу 3 OLE DB провайдера. Подробнее о назначении каждого читайте здесь
Заключение
На мой взгляд, выбор технологии доступа для Firebird и Interbase очевиден , но, несмотря на это каждый месяц посетители поисковых систем ищут магические ODBC Firebird и ODBC Interbase для создания новых приложений.
Между тем выбор средства доступа к базе данных, как и самой базы данных, является основой приложения и от этого выбора может зависеть не только производительность, скорость разработки, но и успех проекта в целом.
. .