Зв’язування ADO та InterBase (FireBird)

Якщо ти читав ось цю статтю, то вже знаєш вступ до цієї нової;)

Для початку – C++ Builder 6 має спеціальну вкладку компонент для роботи з InterBase/Firebird – InterBase. Всі дії зводилися до того, щоб викласти потрібні компоненти - IBDatabase, IBTable та IBTransaction. Зв'язати їх між собою у Object Inspector, зробити активними та вивести скажемо на DBGrid. Якби я описував як підключаться до InterBase за допомогою InterBase компонентів, то тут вже можна було поставити велику точку. Але ми легких шляхів не шукаємо. Ми шукаємо звичні та зручні.

Тепер про те, що необхідно. Ідемо на http://garr.dl.sourceforge.net/sourceforge/firebird/Firebird_ODBC_1.2.0.69-Win32.exe і беремо конектор FireBird Connector/ODBC для Windows. Власне конектори є і для інших ОС. FireBird це щось на зразок безкоштовної альтернативи InterBase. І хоча вони мають одне коріння, перекинути з однієї в іншу стає все складніше. Цей конектор універсальний, працює на InterBase і на FireBird. До речі, ніхто не забороняє використовувати другу версію конектора. Він ніби як новіший, дивися сам.

Встановлюємо та отримуємо драйвер доступу до InterBase/FireBird. Ідемо в Панель керування (Control Panel) -> Адміністрування (Administrative tools) -> Джерела даних ODBC (Data Sources). Відкриваємо вкладку System DSN і тиснемо Add(Додати). Там вибираємо наш встановлений конектор і тиснемо ОК.

Якщо дістався цього пункту, то далі все значно простіше. У конекторі вказуємо параметри підключення, тобто. назва твого підключення (DSN) - воно вибирається довільно, хост з БД (причому можна вказати на базу розташовану локально), логін/пароль для доступу до БД (тут проявляється специфіка роботи з БД, потрібно вказувати користувача SYSDBA та його пароль). Робимо Testconnection та у разі успішного підключення тиснемо ОК і запускаємо C++ Builder. Для більшої впевненості ми зробили скріншот свого доступу до бази:

тиснемо

Тепер є два способи законнектіться до бази. Або створюємо файл із розширенням udl. Досить простого txt, просто перейменувати. Або прописуємо ConnectionString. З першим все просто, тисни на udl файл двічі, відкривається вікно роботи з провайдерами. Там вибираємо Microsoft OLE DB for ODBC і тиснемо Next. У списку першого пункту вибираємо ім'я нещодавно створеного DSN та тиснемо test connection. Якщо все вдало, виносимо компонент ADOConnection. В інспекторі об'єкта знаходимо ConnectionString і тиснемо на трійку. Далі вибираємо Use Data Link File, Browse (Огляд), знаходимо вами створений udl і тиснемо ОК. Тепер в ADOConnection вибираємо бульову властивість Connected і ставимо true. Якщо все добре, то попросять закластися в базу (нічого не заповнюй, просто тисни ОК, бо ти вже залогінен через конектор), при компіляції програми. При не бажанні постійно натискати ОК, вибери властивість LoginPromt у ADOConnection і встанови його значення в false. Все, база підчеплена, працювати далі як завжди.