Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Method_ЛР_БД(1).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
921.09 Кб
Скачать

Лабораторна робота №5

СТВОРЕННЯ ПРЕДСТАВЛЕНЬ

5.1 Мета роботи

1. Набуття навичок подання предметної області клієнту.

2. Підтримка навичок формування запитів.

5.2 ТЕОРЕТИЧНІ ВІДОМОСТІ

Синтаксис команди CREATE VIEW наступний.

CREATE

[OR REPLACE]

[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]

[DEFINER = { user | CURRENT_USER }]

[SQL SECURITY { DEFINER | INVOKER }]

VIEW view_name [(column_list)]

AS select_statement

[WITH [CASCADED | LOCAL] CHECK OPTION]

Команда створює представлення view_name зі стовпцями, перерахованими в cоlumn_list, на підставі SELECT-запиту.

5.3 ЗАВДАННЯ НА ЛАБОРАТОРНУ РОБОТУ

1. Створити представлення на одну та дві таблиці у вертикальному і горизонтальному варіантах для таблиць лабораторної роботи №2.

2. Провести модифікацію представлення (INSERT, UPDATE або DELETE – по варіантах).

3. Зафіксувати дію модифікації на таблицю.

4.Згрупувати, об’єднати представлення.

5. Вивести частку даних з представлення (за вибором студента).

6.Видалити представлення, за вказівкою викладача.

5.4 Методика виконання

Проходимо сесію. Тиснемо правою кнопкою на test3 і далі вибираємо Create new>View. У вікні Name вкладки View вводимо назву представлення, що створюється, наприклад, view1. У вікні Definer робимо запис для поточного користувача, тобто root@localhost. Залишаємо активними UNDEFINED та None, відповідно, у вкладці Algorithm та вкладці Check option for updates. У вікні Select statement формуємо зміст представлення. Перевіряємо, тиснемо Save. Тиснемо Data, можна зафіксувати зміст представлення.

5.5 ЗМІСТ ЗВІТУ

Розділ “Результати роботи” повинен містити скрипти представлень і результати роботи з ними.

5.6 Контрольні питання

1. Синтаксис представлення.

2.Розкажить про представлення Вашої роботи чи роботи іншого студента.

3.Напишить скрипт представлення, яке показує всіх замовників з самою високою оцінкою.

  1. Напишіть скрипт представлення, що показує номер продавця в кожному місті.

  2. Напишіть скрипт представлення, котре показує усереднений та загальний порядки для кожного продавця після його імені. Пропонується, що всі імена – унікальні.

  3. Створіть представлення, яке показує кожного продавця з усіма замовниками.

  4. Чи можна видалити рядок даних із представлення, створеного на основі даних декількох таблиць?

  5. Наведіть умови модифікації.

Лабораторна робота №6

НАДАННЯ ПРИВІЛЕЇВ КОРИСТУВАЧАМ

6.1 Мета роботи

Вивчити команди і освоїти операції надання прав доступу до БД іншим користувачам.

6.2 Теоретичні відомості

Найголовніший користувач це root, який має повний доступ до БД; спочатку необхідно задати для нього пароль, так як за замовчуванням він не встановлений. Щоб адміністратор міг підключатися з інших хостів, необхідно набрати наступне:

mysql>grant all privileges on *.* to admin@"%" identified by 'some_password' with grant option;

*.* означає, до яких БД і таблиць має доступ адміністратор. Позначення робляться наступним чином: "база.таблиця". Оператори GRANT і REVOKE дозволяють створювати облікові записи користувачів БД, надавати їм привілеї і відбирати їх.

Синтаксис команди GRANT

GRANT тип_привілея [(список_стовпців)] [, тип_привілея [(спісок_стовпців)] ...]

ON {ім'я_таблиці | * | *.* | ім’я_бази_даних .*}

TO ім’я_користувача [IDENTIFIED BY [PASSWORD] 'пароль']

[, ім’я_користувача [IDENTIFIED BY 'пароль'] ...]

[REQUIRE

NONE |[{SSL| X509}]

[CIPHER cipher [AND]]

[ISSUER issuer [AND]]

[SUBJECT subject]]

[WITH [GRANT OPTION | MAX_QUERIES_PER_HOUR # |

MAX_UPDATES_PER_HOUR # |

MAX_CONNECTIONS_PER_HOUR #]];

Синтаксис команди REVOKE

REVOKE тип_привілея [(список_стовпців)][, тип_привілея [(список_стовпців)]...]

ON {ім’я_таблиці | * | *.* | ім’я_бази_даних.*}

FROM ім’я_користувача [, ім’я_користувача ...];

Для операторів GRANT і REVOKE аргумент тип_привілея може приймати наступні значення:

ALL [PRIVILEGES] – задає всі привілеї, крім WITH GRANT OPTION;

ALTER – дозволяє використання ALTER TABLE;

GRANT OPTION – синонім для WITH GRANT OPTION;

CREATE – дозволяє використання CREATE TABLE;

CREATE TEMPORARY TABLES – дозволяє використання CREATE TEMPORARY TABLE;

DELETE – дозволяє використання DELETE;

DROP – дозволяє використання DROP TABLE;

EXECUTE – дозволяє користувачеві запускати збережені процедури;

FILE – дозволяє SELECT ... INTO OUTFILE і LOAD DATA INFILE;

INDEX – дозволяє використання CREATE INDEX і DROP INDEX;

INSERT – дозволяє використання INSERT;

LOCK TABLES – дозволяє використання LOCK TABLES на таблицях, для яких є привілей SELECT;

PROCESS – дозволяє використання SHOW FULL PROCESSLIST;

REFERENCES – зарезервовано для використання в майбутньому;

RELOAD – дозволяє використання FLUSH;

REPLICATION CLIENT – надає користувачеві право запитувати місцезнаходження головного і підлеглих серверів;

REPLICATION SLAVE – необхідно для підлеглих серверів при реплікації (для читання інформації з бінарних журналів головного сервера);

SELECT – дозволяє використання SELECT;

SHOW DATABASES – SHOW DATABASES виводить всі БД;

SHUTDOWN – дозволяє використання mysqladmin shutdown;

SUPER – дозволяє встановити одне з'єднання (один раз), навіть якщо досягнуто значення max_connections, і команди CHANGE MASTER, KILL thread, mysqladmin debug, PURGE MASTER LOGS і SET GLOBAL;

UPDATE – дозволяє використання UPDATE;

USAGE – синонім для ''без привілеїв''.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]