Використання компонентів InterBase Express для підключення до сервера

В клієнтських прикладних програмах Delphi з’єднання з сервером БД здійснюється з допомогою компонента TIBDatabase (відносится до набору InterBase Express). Для встановлення зв'язку з сервером необхідно вказати ім'я сервера і повний шлях до бази даних. Якщо сервер є локальним, то вказуєм лише шлях до файлу бази даних. Для цього можна використовувати властивість DatabaseName (міститься на вкладці властивостей інспектора об'єктів), або скористатися зручним редактором, для виклику якого потрібно двічі клацнути на компоненті. Даний редактор також надає можливість задати значення основних параметрів, що забезпечують з’єднання з базою даних (User Name, Password, SQLRole, Character Set).

Компонент IBDatabase

Підключення до БД з допомогою компонента TIBDatabase

Дані параметри з'єднання можна також задати з допомогою властивості Params.

Визначити діалект бази даних можна за допомогою властивості DBSQLDialect.

Всі дії з базою даних проводяться в рамках транзакдій. Властивість DefauitTransaction містить посилання на компонент TIBTransaction, який використовується за замовчуванням. Всі компоненти, пов'язані з TIBDataBase, також будуть використовувати даний компонент транзакції. З одним компонентом TIBDataBase може бути пов'язано кілька таких компонентів. З'ясувати, скільки насправді їх використовується, можна за допомогою властивості TransactionCount, а звернутися до одного з них можна за його індексом, використовуючи властивість Transactions.

Помістити компонент транзакції в список використовуваних можна за допомогою методу AddTransaction, а для видалення слід використовувати метод RemoveTransaction, який застосовується для видалення всіх пов'язанийних транзакцій.

З’єднання підключається і відключається властивістю Сonnected. Властивість IdleTimer задає часовий інтервал до відключення не використовуваного з’єднання.

Для прикладу, давайте створимо delphi проект, який буде здійснювати з'єднання  з деякою базою даних autobazar. Для цього, на форму розмістимо компонент IBDatabase1 (міститься на закладці InterBase) і два компоненти Button1 та Button2 із закладки Standard. Далі значення властивості LoginPromt, компонента TIBDataBase, встановимо в False. Це зроблено для того, щоб не з'являлося вікно вводу пароля і імені користувача. Також для властивості Params задамо параметри підключення (логін і пароль), за замовчуванням, вони будуть: user_name=SYSDBA; password=masterkey. Для властивості DatabaseName вкажемо шлях до файлу бази даних.

ibdatabase2

Підключення до БД використовуючи компонент TIBDatabase

Після виконання даних дій, на подію OnClick, кнопки Button1, за якою відбувається підключення до БД напишемо наступний код:

procedure TForm1.Button1Click(Sender: TObject);
begin
try
IBDatabase1.Connected := True;
ShowMessage('Підключення до БД «Автобазар» пройшло успішно!');
except
ShowMessage('Помилка підключення до БД!');
end;
end;

Кнопку Button2 будемо використовувати для відключення даного з'єднання. Тобто, на подію OnClick будемо змінювати значення властивості Connected компонента IBDatabase1 на False.

Також відмітимо, що компонент TIBDatabase можна використовувати також і для створення бази даних. Для цього використовується метод CreateDatabase. Ім'я файлу бази даних задається у властивості DatabaseName. Решта параметрів задаються у властивості Params.

Доповнимо проект, створений в попередньому прикладі ще одним компонентом Button3, який будемо використовувати для створення бази даних autobazar1.

Створення БД використовуючи компонент TIBDatabase

Створення БД використовуючи компонент TIBDatabase

Для даної кнопки, на подію OnClick напишемо код:

procedure TForm1.Button3Click(Sender: TObject);
begin
with IBDatabase1 do
begin
try
Connected := False;
DatabaseName := 'autobazar1.GDB';
SQLDialect := 3;
Params.Clear;
Params.Add('USER «SYSDBA»');
Params.Add('PASSWORD «masterkey»');
CreateDatabase;
ShowMessage('Створення БД «Автобазар1» пройшло успішно!');
except
ShowMessage('Помилка створення БД!');
end;
end;
end;

Скачати delphi проект, який ми створювали в розглядуваних вище прикладах можна за посиланням приклад використання компонента TIBDatabase.

Матеріал був корисним, поділись в соціальних мережах:

Якщо тобі сподобалась дана тема, залиш свій коментар