Выбрать главу

Если проблема с подсоединением к серверу Firebird так и не исчезла, тогда имеет смысл обратиться к более квалифицированному специалисту по настройкам сети либо в один из форумов или списков рассылки. Обратитесь к приложению 12 за подробностями.

Приложение 3. Интерфейсы приложений

"Родным" интерфейсом Firebird по доступу к клиентской библиотеке является использование функции С и структур параметров, представляющих API. Заголовочный файл С ibase.h поставляется вместе с Firebird в каталоге /include. Этот заголовочный файл может быть применен при написании программ на языке С, которые используют клиентскую библиотеку, однако это полезный справочник и при разработке интерфейсов к библиотеке из других языков.

Драйверы JayBird JDBC

Драйверы JayBird JDBC для Firebird являются полностью совместимой с JDBC 2.0 абстракцией API Firebird, которая может быть использована в любых IDE, которые поддерживают драйверы JDBC, например, в Eclipse и Borland JBuilder.

Эти драйверы запускаются в Java 2 JRE 1.3.1 и Java 2 JRE 1 n.x и могут быть использованы со всеми популярными системами интерфейсов, поддерживающими JDBC 2.0, JDBC 2.0 Standard Extensions и JCA 1.0. Примеры включают JBoss 3.2.3, WebLogic 7.0, WebLogic8.1, ColdFusion MX, Hibernate (прозрачная постоянная система) и TJDO.

Последняя версия JayBird 1.5 была подготовлена к весне 2004 года.

Поддержка двухфазного подтверждения Firebird соответствует стандартному соглашению участия в распределенных транзакциях в Java, поддерживающих реализации JCA framework и XADataSource. JayBird соответствует модели JDBC "одна транзакция на соединение". Она не имеет нескольких транзакций на соединение, хотя они невидимо используются в JCA framework. JDBC не поддерживает события и массивы Firebird.

Лицензирование: JayBird является системой с открытыми кодами, свободно распространяемой или продаваемой на основании измененной лицензии BSD.

Загрузка: в вашем браузере войдите на http://sourceforge.net/projects/firebird/ и прокрутите страницу, пока не найдете строку, содержащую firebird-jca-jdbc-driver. Щелкните по Download справа, чтобы перейти к странице загрузки, где вы сможете выбрать желаемый комплект поставки из списка firebird-jca-jdbc-driver- например, FirebirdSQL-l.x.zip.

Поддержка: форум поддержки разработчиков и пользователей находится на http://groups.yahoo.com/group/firebird-java. Обширный, активно поддерживаемый список FAQ распространяется вместе с инсталляцией JayBird, а также доступен на различных сайтах сообщества, включая http://www.ibphoenix.com/main.nfs?a= ibphoenix&l=;FAQS;NAME=' JayBird'.

ODBC

Драйвер Firebird ODBC/JDBC

Это свободно распространяемый, совместимый с JDBC драйвер ODBC с открытыми кодами для Firebird и InterBase 6.x, первоначально финансируемый IBPoenix и спонсорами сообщества, свободно реализуемый (во всех смыслах) под Initial Developer's Public License. Версии библиотек драйвера доступны для Windows, Linux (unixODBC и iODBC), FreeDSB и Solaris. Самая последняя версия на момент выхода книги - 1.2.0060 совместима со спецификациями ODBC 3.0[160]. Она поддерживает все версии и модели Firebird, включая Встроенный сервер под Windows версии 1.5.

Для соединения с базами данных Firebird приложения могут использовать множество дескрипторов DSN, каждый из которых реализован для различных клиентских версий. Если требуется, то в одном приложении могут быть параллельные соединения. Транзакция с двухфазным подтверждением может поддерживать до десяти соединений. Поддержка множества транзакций в одном соединении разрабатывалась, когда выходила эта книга. События Firebird не поддерживались.

Распространяются make-файлы для создания драйвера из исходных текстов С в gcc 2.96 Linux и более поздних, gcc freeBSD, gcc для Windows (MinGW), cc Solaris, BCC55 и MsVC6. Проекты IDE с make-файлами доступны для DEV-C++ 4.8 и более поздних, а также для MsVC6.

Драйвер ODBC Firebird - наиболее быстрый из доступных для Firebird и InterBase- хорошо работает с Open Office 1.1.0, Microsoft (Excel, VC6, VC7, VB6, VFP6, MsQry32, Access и т.д.) и с любыми компонентами, поддерживающими ADO. Он поддерживает зашифрованный пароль и прокручиваемые курсоры. Схемы интерфейса включают:

* универсальные компоненты (Excel, VFP6, VB6 и т.д.) и поддержку столбцов массивов, хранимые процедуры выбора и выполняемые хранимые процедуры с заменяемыми параметрами (CALL MYPROC ?), возможность {fn}, пакеты и полностью определенные имена столбцов;

* ADO OLEDB ODBC Manager (odbc32.dll) OdbcJdbc;

* OLEDB(MSDADC.DLL) ODBC Manager OdbcJdbc;

* интерфейс пользовательских программ с ODBC Manager OdbcJdbc.

Драйвер поддерживает AutoQuotedidentifier для полной совместимости запросов с интерфейсами запросов Microsoft.

Загрузка совместно используемых библиотек:

http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_60_odbc.

Наиболее последние версии:

http://cvs.sourceforge.net/viewcvs.py/firebird/OdbcJdbc/BuiIds/. Самые последние состояния: http://www.praktik.km.ua (Владимир Цвигун). Форум поддержки и разработки: обратитесь к списку на https://lists.sourceforge.net/lists/listinfo/firebird-odbc-devel.

Другие драйверы ODBC[161]

Драйвер XTG ODBC

Это свободный с открытыми кодами драйвер ODBC для Firebird/InterBase 6.x под Windows, соответствующий уровню ODBC 3 API CORE и распространяемый под лицензией LGPL. Версия 1.0.0 (бета 15) содержит ошибки, но ее можно использовать. В двоичном виде распространяется как полный инсталлятор Windows.

Загрузка двоичного кода: http://www.xtgsystems.com.

Исходные тексты: http://ofbodbc.sourceforge.net/drvinfo.html.

Драйвер Gemini ODBC

Это коммерческий драйвер ODBC для Windows и Linux, соответствующий спецификации Call Level Interface (CLI), разработанный в SQL Access Group, а затем адаптированный X/Open и ISO/IEC в качестве приложения к стандарту текущего языка SQL. В настоящий момент в версии 2.2 бета драйвер соответствует спецификации ODBC, описанной в ODBC Programmer's Reference, версия 3.51. Более подробную информацию и загрузку пробной версии вы можете найти на http://www.ibdatabase.com[162].

Драйвер Easysoft ODBC

Это коммерческий драйвер ODBC для InterBase под Windows и Linux. На некоторых платформах он поддерживает UNICODE. Более подробную информацию, загрузку пробной версии и описание форума поддержки можно найти на http:// www.easysoft.com/products/interbase.

Firebird .NET Provider

Открытые исходные тексты Firebird .NET Provider являются интерфейсом для данных, разработанным для работы приложений, созданных в окружениях Microsoft .NET. Самая поздняя стабильная версия (версия 1.5.2) поддерживает все версии Firebird, Классический сервер и Суперсервер для разработок в таких средах IDE, как:

* Microsoft Visual Studio 2002 и 2003;

* SharpDevelop (http://www.icsharpcode.net/OpenSource/SD);

* Borland С# Builder;

* Borland Delphi .NET (Delphi 8);

* MonoDevelop (http://www.monodevelop.com, в процессе тестирования).

Версия 1.2 на стадии бета 2 (когда эта книга выходила из печати), похоже, была создана летом 2004 года, поддерживает Firebird 1.5 Встроенный сервер для Windows и события Firebird.

Provider не поддерживает- и это ограничение архитектуры ADO .NET- нескольких транзакций в соединении или двухфазного подтверждения транзакций.

Поддерживаемые языки: С#, VB .NET, Microsoft Visual C++ .NET, Delphi .NET, ASP .NET и другие языки .NET. Известно, что он совместим со многими другими специализированными продуктами .NET, включая Gentle .NET (http://www.mertner.com /projects/gentle), NHibernate (http://nhibernate.sourceforge.net) и aspxDelphi.net PORTAL & STORE (http://www.aspxdelphi.net). Поддержка Firebird добавляется в следующей версии объектно-ориентированной оболочки LLBLGen Pro (http://www.llblgen.com/defaultgeneric.aspx).

вернуться

160

Большинство современных приложений, в том числе офисных, требуют совместимости драйвера со спецификацией ODBC 3.5. Альтернативные драйверы ODBC также можно найти на www.ibase.ru. - Прим. науч. ред.

вернуться

161

Кроме драйверов ODBC еще существуют драйверы OLEDB. Великолепный драйвер, который можно использовать из офисных приложений, Visual C++ и других инструментов, создан в Липецке: http://www.ibprovider.com/rus/index.htmI. - Прим. науч. ред.

вернуться

162

Для получения этого драйвера обратитесь с запросом на адрес sales@ibase.ru. - Прим.