04 декабря 2019

Ходячие мертвецы. BDE в Delphi 10.3 Rio

    В лихие 90-е... т.е. в далекие 90-е компания Borland для своих средств разработки придумала единый программный интерфейс для доступа к базам данных - "Open Database Application Programming Interface" (ODAPI). Он успешно прошел апробацию в ее первых версиях средств разработки для настольных баз данных под Windows: Quattro Pro, Paradox и dBase. Вскоре функционал ODAPI был расширен поддержкой SQL-серверов и возможностью выполнять SQL-запросы, как к серверным БД, так и к настольным. Его даже поддержали такие "уважаемые" компании как IBM и Novell, а компания Microsoft подхватила идею и выпустила свой подобное API - ODBC. Позже в названии слово "open" было заменено на "integrated" и под названием "Integrated Database Application Program Interface" (IDAPI) данная технология вошла в "Borland Database Engine" (BDE). Но BDE постигла судьба многих других продуктов, конкурировавших с Microsoft - лучший по функциональным возможностям программный продукт проиграл маркетинговую войну.
    После поражения от ODBC, BDE почти не развивался. А последний гвоздь в гроб BDE загнала сама компания Borland выпустив Borland Delphi 6, в которой была предложена альтернатива BDE - DbExpress. Больше десяти лет труп BDE добавлял лишние 25-30 мегабайт инсталлятору RAD Studio, и был удален из него только в версии XE7.
    Мой опыт работы с BDE был не большой - всего один проект. На протяжении нескольких лет я участвовал в разработке и поддержке крупного проекта, в котором, через связку BDE-ODBC мы работали с СУБД SQLBase. Это было еще то извращение... Параллельно с этим проектом, еще в конце прошлого века, мы уже вели разработки с использованием библиотеки для прямого доступа к клиентам различных СУБД - SQLDirect Component Library.
    Недавно я узнал, что BDE еще жив. И, что люди даже портируют некоторые старые проекты, использующие BDE, на новые версии Delphi. Давайте посмотрим, как установить BDE для работы с ним в Delphi 10.3 Rio.
    Это просто. После установки RAD Studio, Delphi или C++Builder 10.3 Rio скачиваем и устанавливаем "BDE Installer for RAD Studio, Delphi, C++Builder 10.3 Rio". Это уже позволит скомпилировать проект, который использует BDE. Для полноценной работы с BDE, необходимо еще установить в IDE design-time пакет "Embarcadero BDE DB components". Для этого в IDE выбираем пункт меню "Component->Install packages...", а в открывшемся диалоге "Install packages":
  1. нажимаем кнопку "Add..."
  2. в папке, где установлена IDE, выбираем папку "bin" (по умолчанию, "C:\Program Files (x86)\Embarcadero\Studio\XX.0\bin", где XX - номер версии BDS, который для инсталлятора BDS почему то не менялся с версии XE6 и для 10.3 Rio он равен "20")
  3. выбираем пакет с компонентами BDE - "dclbdeXXX.bpl", где "XXX" номер пакетов зависящий от версии IDE и для 10.3 Rio равный "260" (т.е. выбираем "dclbde260.bpl")
  4. жмем кнопку "Open" (те, у кого ее нет жмут кнопку "Открыть")
  5. жмем кнопку "OK"
В результате в палитре компонет добавилась закладка "BDE" с компонентами: TDatabase, TTable, TQuery, TStoredProc, TUpdateSQL, TSession, TBatchMove и TNestedTable.
И как, в рекламе: Внимание! Поставьте BDE сейчас, и вы получите совершенно бесплатно две замечательные утилиты:
  1. "Database Desktop" (C:\Program Files (x86)\Embarcadero\Studio\20.0\BDE\Database Desktop\dbd32.exe) - классическую утилиту для создания и редактирования настольных баз данных.
  2. "BDE Administrator" (C:\Program Files (x86)\Common Files\Borland Shared\BDE\bdeadmin.exe) - утилиту для конфигурирования BDE.
Все. Теперь вы можете наслаждаться антиквариатом!

8 комментариев:

  1. Ну, наконец-то, и про старый, но добрый BDE вспомнили.

    ОтветитьУдалить
  2. О мёртвых либо хорошо, либо ничего... :)

    ОтветитьУдалить
  3. odbc то действительно открытый быд, а bde так и остался закрытым

    ОтветитьУдалить
    Ответы
    1. вам там что открыть? ф-ии бде для работы с парадоксом? а остальное бде берет из чужих длл

      Удалить
  4. Анонимный18 июня, 2020 11:35

    Его мощи и дальше доступны адептам веры в Delphi: BDE for RAD Studio 10.4 https://altd.embarcadero.com/releases/studio/21.0/BDEInstall.exe

    ОтветитьУдалить
  5. его не просто "поддержали такие уважаемые, как Novell", а совместно разрабатывали, но судьба распорядилась по своему - Гейтс киданул IBM, Novell стала частью Micro Focus, а Borland вообще исчез. А вот принципы , заложенные в их разработку используются сегодня не только в BDE.

    ОтветитьУдалить
  6. BDE содержит ошибки, блокировки при многопоточности, часть пробелем была исправлена Borland по жалобам пользователей. Остались ошибки при открытии таблиц и SQL запросов, не работаю кодовые таблицы. Без добавления/исправления защиты с БД на многоядерном процессоре может работать только один поток

    ОтветитьУдалить
  7. Анонимный16 марта, 2024 13:44

    12.0 https://altd.embarcadero.com/releases/studio/23.0/120/BDEInstall.exe
    11.1 https://altd.embarcadero.com/releases/studio/22.0/BDEInstall.exe
    10.4 https://altd.embarcadero.com/releases/studio/21.0/BDEInstall.exe

    ОтветитьУдалить