BDE-драйвер прямого доступа существует сегодня для Microsoft SQL Server версий 4.x и 6.x. Он не всегда работает с Microsoft SQL Server 7.0 и MSDE, так как некоторые новые особенности Microsoft SQL Server 7.0, отсутствовавшие в прежних версиях этой СУБД, например ряд типов данных, не поддерживаются BDE.
Следует подчеркнуть, что, как и в случае с Access, несмотря на теоретическую возможность доступа к данным этой СУБД с помощью ODBC Link и соответствующего ODBC-драйвера, практически это осуществимо не всегда по той же самой причине.
Доступ к данным этой СУБД необходимо осуществлять с помощью ADO/OLE DB (либо с помощью объектной модели клиентской части этой СУБД).
Oracle, Sybase, IBM DB2, Informix, InterBase
Для всех перечисленных СУБД существуют BDE-драйверы прямого доступа (так называемые SQL Links). Помимо этого доступ к ним может быть осуществлен с помощью ODBC Link и ODBC-драйверов (такой доступ нередко применяется в случае, когда в качестве средства разработки используется Delphi Professional или C++Builder Professional, не имеющие SQL Links в своем составе). Отметим также, что для этих СУБД нередко имеется по нескольку ODBC-драйверов разных производителей (иногда поддерживающих разную функциональность).
В случае использования объектно-ориентированных возможностей Oracle 8 на данный момент более предпочтительно применение BDE, а не других универсальных механизмов доступа к данным, так как объектные типы данных этой СУБД поддерживаются ее BDE-драйвером прямого доступа, но не поддерживаются имеющимися версиями OLE DB-провайдеров. Однако поддержка этих возможностей на уровне компонентов и классов в Delphi и C++Builder возможна только начиная с версии 4.0.
ODBC-источники
Как уже было отмечено выше, для доступа с помощью BDE к источникам данных, отличным от перечисленных выше, следует использовать ODBC-драйвер и ODBC Link.
В следующей таблице приведен список ODBC-драйверов, сертифицированных для использования с Delphi 5/C++Builder 5 и BDE.
Таблица 2
Сертификация применимости с BDE | Версия ODBC Driver Manager | СУБД | Производитель ODBC-драйвера | Версия ODBC- драйвера |
Полностью сертифициро- ванные драйверы | 3.5 | Access 95/97 | Microsoft | 3.40 |
FoxPro | Microsoft | 3.40 | ||
Microsoft SQL Server 6.5 | Microsoft | 3.00 | ||
Microsoft SQL Server 6.5 | Intersolv | 3.01 | ||
Oracle 7.3 | Intersolv | 3.01 | ||
3.51 | Access 95/97 | Microsoft | 3.51 | |
FoxPro | Microsoft | 3.51 | ||
Microsoft SQL Server 6.5 | Microsoft | 3.6 | ||
Microsoft SQL Server 6.5, 7.0 | Intersolv | 3.11 | ||
Oracle 7.3 | Intersolv | 3.11 | ||
Драйверы, сертифициро- ванные как реализующие основную функциональ- ность | 3.5 | Informix 7.20 и 9.11 | Intersolv | 3.01 |
DB2 (IBM v5 client 6/98) - протестирован с серверами 2.12 и 5.0 (UDB) | Нет сведений об ODBC-драйверах | |||
Sybase 11.02 | Intersolv | 3.01 | ||
3.51 | DB2 (IBM v5 client 6/98) - протестирован с серверами 2.12 и 5.0 (UDB) | Нет сведений об ODBC-драйверах | ||
Sybase 11.02 | Intersolv | 3.11 | ||
Oracle 7.3 и 8.0.4 | Intersolv | 3.11 |
В целом доступ к наиболее популярным СУБД может быть осуществлен с помощью BDE следующими способами.
Таблица 3
СУБД | ODBC-драйвер + ODBC Link | BDE-драйвер |
Paradox | + | + |
dBase | + | + |
Microsoft Access 95 | + (требуется Microsoft Jet Engine 3.0) | + (требуется Microsoft Jet Engine 3.0) |
Microsoft Access 97 | + (требуется Microsoft Jet Engine 3.5) | + (требуется Microsoft Jet Engine 3.5) |
Microsoft Access 2000 | Частично (требуется Microsoft Jet Engine 4.0) | - |
Microsoft FoxPro | + | + |
Microsoft Visual FoxPro | + | - |
Microsoft SQL Server 6.5 | + | + |
Microsoft SQL Server 7.0 | + | - |
Microsoft Data Engine | + | - |
Oracle 7 | + | + |
Oracle 8 | + | + (начиная с версии 8.0.4) |
Sybase 4.0 (с интерфейсом DB-Lib) | + | + |
Sybase System 10 и более поздние версии с интерфейсом CT-Lib Interface | + | + (начиная с версии 10.0.4 EBF7264) |
Informix | + | + |
IBM DB2 | + | + |
IB Database 4.0, 5.х | + | + |
Суммируя все сказанное выше, отметим, что по сравнению с другими универсальными механизмами доступа к данным применение BDE оправданно, когда:
- для хранения данных используются СУБД, когда-то принадлежавшие фирме Borland (Paradox, dBase);
- для создания приложений используются ранние версии средств разработки Borland вместе с Informix, IB Database, DB2, Sybase, а также ранними версиями Access и Microsoft SQL Server;
- используются объектные расширения Oracle и средства разработки Borland двух последних версий.
Применение BDE абсолютно не оправданно, когда:
- для создания приложений используются средства разработки, не принадлежащие и не принадлежавшие Borland (за исключением случаев, когда необходима запись в файлы Paradox и dBase);
- для хранения данных используются Microsoft SQL Server 7.0 и Access 2000.
Мы видим, что применение BDE в ряде случаев связано с определенными ограничениями, причиной которых часто является отсутствие необходимых BDE-драйверов, которые, в отличие от ODBC-драйверов и OLE DB-провайдеров, не производит никто, кроме фирмы Borland. Этот недостаток отчасти могут восполнить другие продукты третьих фирм, имеющиеся сегодня в достаточном количестве.