- •Міністерство освіти і науки україни Черкаський державний технологічний університет
- •Черкаси 2013
- •Рецензент проф. В. Є. Снітюк
- •Лабораторна робота №1
- •1.1 Мета роботи
- •1. Набуття навичок аналізу предметної області
- •1.2 Теоретичні відомості
- •1.3 Завдання на лабораторну роботу
- •1.4 Методика виконання
- •1.6 Контрольні питання
- •Лабораторна робота №2
- •2.1 Мета роботи
- •3.Об’єднання таблиць.
- •4. Додавання записів.
- •2.2 Теоретичні відомості
- •2.3 Завдання на лабораторну роботу
- •2.4 Методика виконання
- •Тестування
- •2.6 Контрольні питання
- •3.3 Завдання на лабораторну роботу
- •3.4 Методика виконання
- •3.6 Контрольні питання
- •Лабораторна робота 4
- •4.1 Мета роботи Вивчення мови запитів, які поширюються на дві і більше таблиці.
- •4.2 Теоретичні відомості
- •4.3 Завдання на лабораторну роботу
- •Лабораторна робота №5
- •5.1 Мета роботи
- •1. Набуття навичок подання предметної області клієнту.
- •5.4 Методика виконання
- •5.6 Контрольні питання
- •Лабораторна робота №6
- •6.1 Мета роботи
- •6.2 Теоретичні відомості
- •6.3 Завдання на лабораторну роботу
- •6.4 Методика виконання
- •6.6 Контрольні питання
- •Лабораторна робота №7
- •7.1 Мета роботи
- •7.2 Теоретичні відомості
- •7.3 Завдання на лабораторну роботу
- •7.4 Методика виконання
- •7.6 Контрольні питання
- •Лабораторна робота №8 створення тригерів, подій
- •8.1 Мета роботи
- •1. Набуття навичок реалізації бізнес-правил
- •8.2 Теоретичні відомості
- •8.3 Завдання на лабораторну роботу
- •8.4 Методика виконання
- •8.6 Контрольні питання
- •Лабораторна робота №9
- •9.1 Мета роботи
- •1. Набуття навичок аналізу стану бд.
- •9.2 Теоретичні відомості
- •9.3 Завдання на лабораторну роботу
- •9.4 Методика виконання
- •1.Переглянути і зафіксувати версію сервера, статус обробників, рівень ізоляції.
- •9.6 Контрольні питання
- •Лабораторна робота №10 створення курсорів
- •10.1 Мета роботи
- •10.2 Теоретичні відомості
- •10.3 Завдання на лабораторну роботу
- •10.4 Методика виконання
- •10.6 Контрольні питання
- •Лабораторна робота №11 розподілена база даних
- •11.1 Мета роботи
- •1. Набуття навичок аналізу систем зберігання даних.
- •11.2 Теоретичні відомості
- •11.3 Завдання
- •11.4 Методика виконання
- •На Сервері №1 налаштовуємо головний майстер-сервер. Для цього потрібно:
- •1. Зупинити MySql сервер;
- •11. Додаємо в my.Ini такі записи:
- •11.4.2 Завершення реплікації
- •11.6 Контрольні питання
- •Лабораторна робота 12 діаграма класів бд
- •12.1 Мета роботи
- •12.2 Теоретичні відомості
- •12.3 Завдання на лабораторну роботу
- •12.4 Методика виконання
- •12.6 Контрольні питання
8.6 Контрольні питання
1.Напишіть скрипт тригера по завданню викладача.
2. Напишіть скрипт події по завданню викладача
2.Як працює тригер (подія)?
3.Розкажить про тригер (подію) Вашої роботи або роботи іншого студента.
Лабораторна робота №9
ВІДСТЕЖУВАННЯ ТРАНЗАКЦІЇ
9.1 Мета роботи
1. Набуття навичок аналізу стану бд.
2. Вивчення частини TCL мови SQL.
9.2 Теоретичні відомості
Для явної роботи с транзакціями маємо наступні оператори
START TRANSACTION; COMMIT; ROLLBACK; SAVEPOINT.
Синтаксис SAVEPOINT і ROLLBACK TO SAVEPOINT
SAVEPOINT identifier;
ROLLBACK TO SAVEPOINT identifier;
Поточний рівень ізоляції видно, якщо подано команду
SHOW VARIABLES LIKE '% tx_isolation%';
Може бути встановлений різний рівень ізоляції. Синтаксис
SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE};
9.3 Завдання на лабораторну роботу
Дослідити виконання дій над таблицею при різних рівнях ізоляції.
9.4 Методика виконання
1.Переглянути і зафіксувати версію сервера, статус обробників, рівень ізоляції.
2. Якщо необхідно перетворити таблицю до типу InnoDB, виконати ALTER TABLE t TYPE=INNODB;
3. Для поточного рівня ізоляції стартувати транзакцію, виконати START TRANSACTION, UPDATE для одної таблиці, переглянути зміст таблиці до і після COMMIT. Дії фіксувати.
4. Змінювати рівень ізоляції, кожен раз виконувати INSERT, переглядати зміст таблиці до і після COMMIT, ROLLBACK. Дії і результати фіксувати.
5. Змінювати рівень ізоляції, кожен раз виконувати два речення з UPDATE, між якими вставити SAVEPOINT. Переглядати зміст таблиці до і після COMMIT, ROLLBACK. Дії фіксувати.
Перший рівень ізоляції встановлюється реченням
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
9.5 ЗМІСТ ЗВІТУ
Розділ “Результати роботи” повинен містити таблицю, скрипти транзакцій і результати дій над таблицею.
9.6 Контрольні питання
1.Властивості транзакції.
2.Напишіть скрипт транзакції.
3.Рівні ізоляції.
4.Блокування транзакцій.
Лабораторна робота №10 створення курсорів
10.1 Мета роботи
1. Набуття навичок переміщень по даних
10.2 Теоретичні відомості
Синтаксис створення і використання курсору.
1 DECLARE cursor_name CURSOR FOR SELECT ...; /* Оголошення курсору і його заповнення */
2 DECLARE CONTINUE HANDLER FOR NOT FOUND /* Що робити, коли більше немає записів */
3 OPEN cursor_name; /* Відкрити курсор */
4 FETCH cursor_name INTO variable [, variable]; /* Призначити значення змінної, рівної поточному значенню стовпця */
5 CLOSE cursor_name; /* Закрити курсор */
10.3 Завдання на лабораторну роботу
1. Створити курсор за завданням викладача.
2. Порівняти з
Select `bank`.* FROM `ХХХ` LIMIT НОМЕР_ПОТРІБНОГО_НАМ_РЯДКА,1
10.4 Методика виконання
Техніка створення курсору продовжує створення процедури (лабораторна робота №7) або тригера.
У прикладі наведемо деякі прості операції з використанням курсору:
01 DELIMITER / /
02
03 CREATE PROCEDURE `proc_CURSOR` (OUT param1 INT)
04 BEGIN
05 DECLARE a, b, c INT;
06 DECLARE cur1 CURSOR FOR SELECT col1 FROM table1;
07 DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1;
08 OPEN cur1;
09
10 SET b = 0;
11 SET c = 0;
12
13 WHILE b = 0 DO
14 FETCH cur1 INTO a;
15 IF b = 0 THEN
16 SET c = c + a;
17 END IF;
18 END WHILE;
19
20 CLOSE cur1;
21 SET param1 = c;
22
23 END / /
10.5 ЗМІСТ ЗВІТУ
Розділ “Результати роботи” повинен містити скрипти з курсорами і результати їх роботи.
