
- •Лабораторна робота № 1 Тема роботи: Реєстрація та створення баз даних в InterBase.
- •1. Керуюча консоль InterBase.
- •2. Реєстрація бази даних в InterBase.
- •3. Створення бази даних в InterBase.
- •Контрольні запитання
- •Лабораторна робота № 2 Тема роботи: Створення таблиць в базах даних в InterBase.
- •1. Типи даних InterBase.
- •2. Створення таблиці.
- •Контрольні запитання
- •Лабораторна робота № 3 Тема роботи: Введення обмежень в базах даних в InterBase.
- •1. Види обмежень в базі даних.
- •2. Первинний і унікальний ключі.
- •3. Зовнішні ключі.
- •4. Обмеження check
- •5. Вилучення обмежень.
- •Контрольні запитання
- •Лабораторна робота № 4 Тема роботи: Використання генераторів ключів в базах даних в InterBase.
- •Створення генераторів.
- •2. Індекси.
- •Контрольні запитання
- •Лабораторна робота № 5 Тема роботи: Використання тригерів в базах даних в InterBase.
- •Означення тригера.
- •Приклад тригера.
- •3. Контекстні змінні.
- •Контрольні запитання
- •Лабораторна робота № 6 Тема роботи: Безпека в InterBase.
- •1. Користувачі.
- •3. Права.
- •4. Роздача прав.
- •5. Організація користувачі у групи за допомогою ролей.
- •6. Анулювання прав.
- •Контрольні запитання
- •Практична робота № 1 Тема роботи: Використання компоненту Database.
- •З’єднання з сервером
- •Контрольні запитання
- •Практична робота № 2 Тема роботи: Використання головної та підлеглої таблиць InterBase засобами Borland Delphi.
- •Контрольні запитання
- •Практична робота № 3 Тема роботи: Використання механізму транзакцій компонента Database.
- •Керування транзакціями.
- •Контрольні запитання
- •Практична робота № 4 Тема роботи: Використання компонент InterBase Express для підключення до сервера.
- •1. Сервер баз даних InterBase і компоненти InterBase Express
- •2. Механізм доступу до даних InterBase Express
- •3. Компонент tibDatabase.
- •Контрольні запитання
- •Практична робота № 5 Тема роботи: Виконання запитів за допомогою компонента tibDataSet.
- •Вибірка даних з таблиці.
- •2. Редагування даних за допомогою візуальних компонентів.
- •3. Програмне редагування даних.
- •Контрольні запитання
- •Практична робота № 6 Тема роботи: Виконання механізму Master-detail в компонентах tibDataSet.
- •Механізм master-detail.
- •Контрольні запитання
- •Література
4. Обмеження check
Одним з найбільш корисних обмежень в базі даних є обмеження перевірки. Ідея його проста – перевіряти вставлюване в таблицю значення на деяку умову і, в залежності від виконаної умови, вставляти чи не вставляти дані.
Синтаксис цього обмеження: < tconstraint > = [CONSTRAINT constraint] CHECK (<search_condition>) Тут constraint – ім’я обмеження; <search_condition> – умови пошуку, в якому в ролі параметра може приймати участь вставлене/змінене значення. Якщо умови пошуку виконуються, то вставка/зміна цього значення дозволяється, якщо ні – виникає помилка. Самий простий приклад перевірки: CREATE TABLE Checktst ( ID integer CHECK(ID>0));
Ця перевірка встановлює, чи більше нуля вставлюване/змінюване значення поля ID, і в залежності від результату дозволяє вставити/змінити нове значення чи викликати виключення. Поле може мати лише одне обмеження CHECK.
5. Вилучення обмежень.
Часто доводиться вилучати різні обмеження по різним причинам. Щоб вилучити обмеження, слід використати речення ALTER TABLE такого виду: ALTER TABLE Сablename DROP CONSTRAINT constraint_name де constraint_name – ім’я обмеження, яке слід вилучити. Слід відзначити, що вилучати обмеження може лише власник таблиці або системний адміністратор SYSDBA.
З А В Д А Н Н Я
Відкрийте на сервері базу даних Sales, яку ви створили.
За допомогою ISQL додайте до таблиць CUSTOMER, PART, SALES первинні ключі по полям CUSTOMER_ID, PART_NUMBER, SALE_NUMBER відповідно.
За допомогою ISQL додайте до таблиць SALES та ITEMS вторинні ключі по полям CUSTOMER_ID, PART_NUMBER, SALE_NUMBER відповідно.
Перегляньте за допомогою IB Console створені вами елементи бази даних.
Оформіть звіт по роботі.
Контрольні запитання
Які типи обмежень існують?
Яка команда створює обмеження?
Яка команда вилучає обмеження?
Яке обмеження створює первинний ключ?
Як додати обмеження в уже існуючу таблицю?
Що виконує обмеження CHECK? Яка його структура?
Коли доцільно використовувати обмеження DEFAULT?
Лабораторна робота № 4 Тема роботи: Використання генераторів ключів в базах даних в InterBase.
Мета роботи: Навчити створювати генератори ключів та індекси у середовищі сервера InterBase.
ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
Створення генераторів.
Генератор – це іменований лічильник. Всередині бази даних ми можемо створити лічильник, дати йому унікальне ім’я в межах цієї бази і керувати значеннями цього лічильника. Це і буде генератор. Приклад:
CREATE GENERATOR g1;
SET GENERATOR g1 TO 2445;
В цьому прикладі в першому рядку бази даних створюється генератор з іменем g1, а у другому – цьому генератору присвоюється значення 2445. Щоб одержати і змінювати значення генераторів, існує функція GEN_ID.
Ця функція приймає в ролі параметрів ім’я генератора і величину приросту, яку потрібно надати даному генератору, а повертає цілочисельне значення, що відповідає значенню генератора, одержаному в результаті додавання до нього приросту. Ось кілька прикладів виклику функції GEN_ID:
Current_value = GEN_ID (g1, 0)
Тут current_value – це змінна, g1 – генератор, і 0 – це приріст. В цьому прикладі в змінну current_value попаде значення генератора g1 після додавання до нього приросту 0 – тобто поточне значення генератора.
Для одержання наступного значення генератора слід викликати функцію GEN_ID з ненульовим приростом:
Current_value = GEN_ID (g1, 1)
Приріст може бути не рівним одиниці – він може бути довільним, в тому числі і плаваючим, і навіть від’ємним:
Current_value = GEN_ID (g1, -23)
Генератори – це надійний механізм для формування унікальних первинних ключів.