Как и где установить драйвер базы данных в IDE?

Я хочу установить драйвер базы данных Firebird и сделать его доступным в среде Delphi XE IDE. Я хочу, чтобы драйвер базы данных можно было использовать на той же основе, что и другие поставляемые драйверы базы данных (например, Interbase, SQL - из проводника данных в среде IDE). Приобрел подходящий драйвер.

Драйвер состоит из проекта Delphi, который компилируется в DLL; и модификации двух файлов конфигурации .ini (dbxconnections.ini и dbxdrivers.ini). Я предполагаю, что DLL является фактическим драйвером, и я без проблем скомпилировал проект.

Я зашел так далеко, и именно здесь я понял, что не знаю, что нужно для установки нового драйвера базы данных; что нужно для установки нового драйвера базы данных в IDE; ни где должны находиться элементы установки.

Итак, мой вопрос: какие шаги необходимы для установки драйвера базы данных dbExpress в интегрированную среду разработки Borland XE Delphi Professional?

Некоторые из конкретных моментов, о которых я не знаю, включают:

  1. Нужно ли регистрировать драйвер во всех Firebase, Delphi и Windows?
  2. Нужно ли мне использовать определенную процедуру регистрации для выполнения регистрации?
  3. Есть ли какие-то элементы, которые мне не хватает для достижения моей цели?
  4. Где должны быть установлены установленные компоненты?

Все четыре производителя: Embarcadero, Borland, , UniOpen. и Firebird предоставляют документацию (большая часть которой очень исчерпывающая), но я не смог извлечь из них, что мне нужно делать и где это делать.

Я искал несколько вопросов по SO, но все, похоже, исходят из того, что OP знает, что участвует в установке драйвера.

Все продукты (кроме проекта драйвера) создают несколько файлов в разных местах, и неясно, какие компоненты и где принадлежат. Например, у меня есть несколько версий двух файлов конфигурации, находящихся в:

  1. C: \ Users \ User \ AppData ....
  2. C: \ Users \ Public \ Public Documents ...
  3. C: \ Program Files \ Vendor ....
  4. ....

Кроме того, эти продукты устанавливают файлы в:

  1. реестр (несколько ключей);
  2. C: \ Program Files ....;
  3. C: \ Program Files (x86) ....;
  4. C: \ Windows \ System ....;
  5. C: \ Windows \ System 32 .....
  6. и, возможно, больше.

Окружающая обстановка:

  • Машина: Lenovo Thinkpad W510
  • ОС: Windows 7 Максимальная
  • Delphi: Embarcadero® RAD Studio XE версии 15.0.3953.35171
  • База данных: W1-V2.5.0.26074 Firebird 2.5
  • Драйвер базы данных: драйвер UniOpen Native DBX

Также установлено:

  • Embarcado Borland® Developer Studio 2006 Enterprise, версия 10.0.2288.42451, обновление 2 (версия для XP)
  • Borland Delphi Версия 7 (Версия XP)

Вкратце:

Какие шаги и места необходимы для установки драйвера базы данных dbExpress в Borland XE Delphi Professional IDE?


person Chris Walton    schedule 27.03.2011    source источник
comment
Кажется, вы сбиты с толку своими версиями. 2010 или XE? Мне кажется, вам следует обратиться к поставщику драйверов. При этом, согласно Google, UniOpen не существует.   -  person David Heffernan    schedule 28.03.2011
comment
Путаница версий из-за неправильного выбора тега. Добавлена ​​ссылка на источник драйвера UniOpen.   -  person Chris Walton    schedule 28.03.2011
comment
@Chris написано 2010 прямо там, внизу Q.   -  person David Heffernan    schedule 28.03.2011
comment
Почему бы вам не использовать встроенный драйвер Firebird в XE или, если вы используете Pro версию XE, использовать драйвер от Devart? Похоже, вы пытаетесь сделать это по дешевке.   -  person David Heffernan    schedule 28.03.2011
comment
Кроме того, хотя у меня есть драйвер UniOpen, я не зациклен на каком-то конкретном драйвере и был бы вполне готов использовать другой драйвер. Это все еще оставляет мой первоначальный вопрос - как установить такой драйвер в IDE?   -  person Chris Walton    schedule 28.03.2011
comment
Я не могу вам помочь, но я думал, что XE поставляется с драйверами Firebird dbx.   -  person David Heffernan    schedule 28.03.2011
comment
@ Дэвид: Это зависит от артикула. Professional поставляется только с Interbase и MySQL (и, конечно, с BlackFish). Enterprise и Architect добавляют дополнительные драйверы баз данных, такие как Oracle, SQL Server и т. Д.   -  person Ken White    schedule 28.03.2011
comment
@ Дэвид - поправил. Я использую версию XE Pro. Поскольку открытое решение является предпочтительным, поскольку учитывается стоимость - 100 долларов за (сравнительно) второстепенный компонент не совсем тривиально для кого-то на пенсии. Однако драйвер Devart действительно предоставляет инфраструктуру поддержки, необходимую для установки драйвера.   -  person Chris Walton    schedule 28.03.2011
comment
@chris, если подумать, я подозреваю, что использую старую Firebird через драйверы Delphi 6 Interbase! Интересно, будет ли этот подход работать с более современным Delphi. Я не предлагаю это как решение для вас, лучше подумать вслух для себя.   -  person David Heffernan    schedule 28.03.2011
comment
@David: Это работает, но некоторые из новых функций Firebird не поддерживаются (в том, что касается Interbase).   -  person Ken White    schedule 28.03.2011
comment
@ken Иногда я такой тупой! Я занимаюсь этим годами и только сейчас понял, что делаю на самом деле! На самом деле это прекрасно, потому что мне не нужны никакие функции базы данных. Обязательно обратите внимание на то, чтобы не обновлять Firebird. Спасибо.   -  person David Heffernan    schedule 28.03.2011


Ответы (2)


Вы пропустили файл. :)

DataExplorer, насколько я могу судить, использует dbxdrivers.ini. В моей установке XE есть единственная копия этого конкретного файла, расположенная (Win7 64) в C: \ Users \ Public \ Documents \ RAD Studio \ 8.0. Типы подключения, перечисленные в DataExplorer, берутся из списка установленных драйверов в начале этого файла, и каждый драйвер имеет один или несколько разделов конфигурации, которые следуют за этим списком.

Файлы драйвера, перечисленные в разделе конфигурации, должны находиться в месте, доступном для поиска (как и любая другая DLL Windows) с помощью LoadLibrary. В документации по ссылке объясняется, как функция API ищет библиотеки DLL; в основном, хотя IDE должна найти его где-нибудь в PATH.

Поставщик или автор вашего конкретного драйвера должен иметь возможность предоставить информацию, которая должна быть помещена в файл dbxdrivers.ini. (Я лично не знаком с UniOpen, и у меня нет FireBird на этой конкретной машине.) IDE читает этот файл только во время запуска, поэтому вам потребуется (повторно) запустить IDE после внесения дополнений.

Это сообщение на форуме Embarcadero Delphi Database-> DBExpress может помочь с определением псевдонимы для ваших баз данных Firebird и описывает подключение через компонент TSQLConnection. (Найдите сообщение Ральфа Хорбери-Смита.) Если у вас нет идентификатора сети разработчика, вам необходимо зарегистрироваться на сайте Embarcadero; ссылка, которую я предоставил, по какой-то причине использует HTTPS. Вы также можете попасть на их форумы через NNTP; Я не использую программу чтения новостей, поэтому не знаю, какой у меня адрес. Ссылка на информацию о подключении есть на этой странице Embarcadero.

Также может помочь некоторая информация, доступная на вики-страницах документации Delphi XE.

РЕДАКТИРОВАТЬ: нашел еще одну ссылку на форумах DBExpress, которая может вас заинтересовать. В нем есть ссылка на другой драйвер FB DBExpress и конкретная информация для файла dbxdrivers.ini для этого Водитель. Это сообщение Филиппа Флореса (около 3-го на странице).

person Ken White    schedule 27.03.2011

Я принимаю ответ @Ken. В его ответе были ссылки на различные ресурсы. Я резюмирую ответы на конкретные вопросы, которые я получил из ссылок.

  1. Нет необходимости изменять dbxconnections.ini - IDE сделает это за меня.
  2. Мне нужно соответствующим образом изменить dbxdrivers.ini и поместить его в каталоги IDE.
  3. Фактический драйвер должен быть где-то на пути - обычно это System32.
  4. Нет необходимости регистрировать драйвер в Windows. <удар>
  5. Помимо перечисленных выше пунктов, для регистрации таких драйверов не требуется специальной процедуры.
  6. Список здесь кажется полным.

РЕДАКТИРОВАТЬ:

Мои выводы в этом резюме были преждевременными, и я спросил дополнительный вопрос, чтобы попытаться получить дополнительную информацию. Вычеркиванием в приведенном выше списке отмечены неправильные элементы.

person Chris Walton    schedule 28.03.2011