Робота з firebird в delphi, блог delphi-програміста

Робота з firebird в delphi, блог delphi-програміста
Привіт всім дорогі друзі. У цій статті хочу поговорити про FireBird. Мені, якщо чесно, ніколи не доводилося працювати з даної СУБД, тому для мене це було щось нове. Я спочатку почав думати про те, через що мені найкраще підключатися до моєї базі даних: ADO - подумав я, можна було б спробувати, як я підключався до MySQL підключитися через ODBC. але я чомусь не захотів, а просто сказав собі, навіщо, якщо в Delphi є чудова вкладка InterBase. яка допоможе вирішити всі мої проблеми.

Завдання переді мною стояла дуже проста, мені необхідно було з однієї бази даних, перенести дані в іншу базу даних. Структури бази даних у мене однакові, так що придумати задачу ще легше, напевно, не можна.

Встановив я FireBird 1.5 Server і поклав собі в папку 2 бази * .FDB.

Далі я створив проект в Delphi і встановив на формі наступні компоненти:

  • TIBDataBase - 2 шт
  • TIBQuery - 2 шт
  • TIBTable - 1 шт
  • TDataSource - 1 шт
  • TDBGrid - 1 шт
  • TIBTransaction - 1 шт
  • TButton - 7 шт
  • TComboBox - 1 шт

Компонент TComboBox необхідний мені для відображення списку таблиць першої бази даних, з якою я буду переносити дані в іншу БД.

Що стосується зв'язки компонентів між собою. Компоненти TIBDataBase я пов'язав з TIBTransaction у властивості DefaultTransaction. компоненти TIBQuery і TIBTable я пов'язав з TIBDataBase у властивості DataBase. компонент TDataSource я пов'язав з TIBQuery (з потрібним мені) у властивості DataSet. а компонент TDataSource я пов'язав TDBGrid у властивості DataSource. Тут має бути все зрозуміло, все стандартно.

Також властивість LoginPromt, компонента TIBDataBase, необхідно встановити в False, щоб не з'являлося повідомлення для введення пароля і користувача, а властивості Params, компонента TIBDataBase, необхідно задати параметри підключення (логін і пароль), за замовчуванням, вони будуть:

Після того, як всі у нас підготовлено, нам необхідно підключитися до нашої БД. Для цього на подію OnClick кнопки вибору шляху до БД я написав наступний код:

Схожі статті