- •Кременчук 2010 Розповсюдження і тиражування без офіційного дозволу Кременчуцького університету економіки інформаційних технологій і управління та авторів заборонено.
- •1 Мета та завдання дисципліни
- •2 Методичні вказівки до виконання лабораторних робіт
- •3 Завдання до лабораторніх робіт
- •3.1 Лабораторна робота № 1
- •1 Теоретичні відомості
- •2 Хід роботи
- •2.1 Створення бази даних
- •2.3 Підключення до бази даних
- •2.4 Видалення бази даних
- •2.5 Отримання метаданих
- •2.2 Реєстрація бази даних
- •2.6 Резервне копіювання і відновлення
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.2 Лабораторна робота № 2
- •1 Теоретичні відомості
- •1.1 Типи даних InterBase
- •2 Хід роботи
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.3 Лабораторна робота № 3
- •1 Теоретичні відомості
- •1.1 Таблиці (Tables)
- •1.2 Індекси
- •2 Хід роботи
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.4 Лабораторна робота № 4
- •1 Теоретичні відомості
- •1.2 Обмеження первинного ключа (Primary key)
- •1.2 Обмеження унікальності (Unique)
- •1.3 Обмеження зовнішнього ключа (Foreign keys)
- •1.4 Контрольні обмеження (Checks)
- •2 Хід роботи
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.5 Лабораторна робота №5.
- •1 Теоретичні відомості
- •1.1 Генератори (Generators)
- •1.2 Бізнес-правила
- •1.3 Тригери (Triggers)
- •2. Хід роботи
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.6 Лабораторна робота №6
- •1 Теоретичні відомості
- •1.1 Додавання нових даних
- •1.2 Видалення існуючих даних
- •1.3 Оновлення існуючих даних
- •2. Хід роботи
- •3. Завдання
- •4. Звіт про виконання роботи
- •5. Контрольні питання
- •3.7 Лабораторна робота №7
- •1 Теоретичні відомості
- •2. Хід роботи
- •3. Завдання
- •4. Звіт про виконання роботи
- •5. Контрольні питання
- •3.8 Лабораторна робота №8
- •1 Теоретичні відомості
- •1.1 Представлення (Views)
- •1.2 Представлення, що модифікуються
- •2 Хід роботи
- •3 Завдання
- •4 Звіт про виконання роботи
- •5 Контрольні питання
- •3.9 Лабораторна робота №9
- •1 Теоретичні відомості
- •1.1 Процедури, що зберігаються (Procedures)
- •1.2 Види процедур, що зберігаються, в InterBase
- •2 Хід роботи
- •3 Завдання
- •4. Звіт про виконання роботи
- •5. Контрольні питання
- •3.10 Лабораторна робота №10
- •1 Теоретичні відомості
- •2 Компоненти доступу до даних
- •3 Хід роботи
- •4. Звіт про виконання роботи
- •5. Контрольні питання
- •3.11 Лабораторна робота №11
- •1 Теоретичні відомості
- •1.2 Компонент tibsql
- •2. Порядок виконання
- •3. Звіт про виконання роботи
- •4. Контрольні питання
- •Перелік рекомендованої літератури
3.10 Лабораторна робота №10
Тема роботи: Робота в Delphi з базами даних за технологією InterBase Express. Мета роботи: Вивчити принципи роботи з базами даних в Delphi за технологією InterBase Express. Отримати навики роботи з компонентами доступу до даних.
1 Теоретичні відомості
На сторінці InterBase Палітри компонентів містяться компоненти доступу до даних для роботи з сервером InterBase. Їх перевага полягає в реалізації всіх функцій за рахунок прямого звернення до API сервера InterBase. Завдяки цьому істотно підвищилася швидкість роботи компонентів. Нові компоненти надають розробникові нові можливості:
покращене управління транзакціями (для цього тепер призначений окремий компонент TIBTransaction);
нові компоненти доступу до даних дозволяють краще вирішувати поширені завдання програмування (компоненти TIBDataSet, TIBSQL);
можливість здобуття відомостей про стан бази даних без прямого звернення до її системних таблиць (компонент TIBDatabaseinfo);
відстежування стану процесів виконання запитів (компонент TIBSQLMonitor).
Методика використання цих компонентів в додатках БД майже не відрізняється від стандартної методики BDE. Для компонентів InterBase Express з'єднання з сервером БД здійснює компонент TIBDatabase. Оскільки для доступу до бази даних компонентам InterBase Express не потрібний BDE, то для створення з'єднання використовується всього одна властивість DatabaseName. У нім необхідно вказати повний шлях (включаючи ім'я сервера) до вибраного файлу БД з розширенням gdb. Для цього можна скористатися стандартним діалогом вибору файлу при клацанні на кнопці властивості в Інспекторові об'єктів. Компонент має власний редактор, який дозволяє задати значення основних властивостей, що забезпечують з'єднання з базою даних. Вигляд вікна редактора компонента приведений нижче.
Налаштування з'єднання проводиться таким чином. На панелі Connection вибирається необхідний сервер InterBase (локальний або доступний видалено), потім в списку Protocol визначається використовуваний мережевий протокол і за допомогою кнопки Browse вибирається файл бази даних. На панелі Database Parameters задаються ім'я користувача, його пароль і роль. Також можна вибрати і набір шрифтів для мовної адаптації додатка (список Character Set).
Для завдання параметрів (ім'я користувача, пароль, схема, роль і т. д.), що вводяться при підключенні, також можна використовувати властивості Params і LoginPrompt. Дорога до файлу бази даних задається властивістю DatabaseName: String; З'єднання включається і відключається властивістю Connected. Параметри з'єднання, які не можна задати властивостями, встановлюються властивістю Params: TStrings; у якому в кожному рядку задається ім'я параметра і потім через знак рівності його значення. Найбільш поширений приклад використання властивості Params це завдання імені користувача і його пароля: user_name=sysdba password=masterkey
У компоненті TIBDatabase відсутні засоби управління транзакціями, які винесені в окремий компонент TIBTransaction. Властивість DefaultTransaction: TIBTransaction; дозволяє задати транзакцію за умовчанням. При цьому всі компоненті з наборами даних, що використовують дане з'єднання автоматично, починають застосовувати цей компонент транзакції. Змінюючи значення цієї властивості, можна в одному з'єднанні працювати з декількома транзакціями. Компонент TIBTransaction інкапсулює засоби управління транзакцією при роботі з сервером InterBase. Для цього він має бути пов'язаний з компонентом TIBDatabase за допомогою своєї властивості DefaultDatabase: TIBDatabase; Транзакція може мати набір параметрів, задати які можна за допомогою властивості Params: TStrings; аналогічно компоненту TIBDatabase. Після того, як транзакція налагоджена, її можна почати, зберегти або відмінити. Транзакція стартує за допомогою методу StartTransaction; При необхідності зберегти всі зроблені в рамках поточної транзакції зміни використовується метод Commit; Якщо виконані дії потрібно відмінити, застосовується метод Rollback; Для відкриття і збереження транзакції можна використовувати традиційну властивість Active: Boolean; Після початку нової транзакції властивість InTransaction: Boolean; набуває значення True, а після фіксації або відкату – значення False. При роботі з сервером InterBase (версії 6.0 і вище) можна використовувати методи commit-Retaining і RollbackRetaining. На відміну від стандартних операцій фіксації і відкату транзакцій, ці методи після передачі або відміни змін залишають поточну транзакцію відкритою.
