first commit

This commit is contained in:
Vitalii Litvinchuk
2026-05-04 23:15:09 +03:00
commit 6deed0469a
49 changed files with 5366 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
#####################################################
################ Завдання 2.1 ###################
1. На остнові таблиці Orders створіть представлення V_Orders з алгоритмом обробки TEMPTABLE,
яке б вивело увесь вміст таблиці.
CREATE ALGORITHM = TEMPTABLE VIEW V_Orders AS SELECT * FROM Orders;
SELECT * FROM V_Orders;
2. Переіменуйте представлення на VOrders
RENAME TABLE V_Orders TO VOrders;
SELECT * FROM VOrders;
3. Спробуйте використати переіменоване представлення для видалення запису з onum = 3001.
Поясніть результат.
DELETE FROM VOrders WHERE onum = 3001;
# Error: The target table VOrders of the DELETE is not updatable
# Видалення не відбулося, оскільки представлення було створено з алгоритмом TEMPTABLE.
#####################################################
################ Завдання 2.2 ###################
1. Створіть точну копію таблиці Salespeople, назвавши її Salespeople_1.
create table Salespeople_1 as select * from Salespeople;
2. На остнові таблиці Salespeople_1 створіть представлення V_Salespeople_1, яке б вивело увесь вміст
таблиці.
drop view if exists V_Salespeople_1;
CREATE VIEW V_Salespeople_1 AS SELECT * FROM Salespeople_1;
SELECT * FROM V_Salespeople_1;
3. Спробуйте використати представлення V_Salespeople_1 для додавання в якості продавця себе.
Перевірте наявність змін.
insert into
V_Salespeople_1 (SNUM, SNAME, CITY, COMM)
values (
1008,
'Vitalii',
'Zdolbuniv',
0.1
);
#####################################################
################ Завдання 2.3 ###################
1. На остнові таблиці Salespeople_1 створіть представлення V_Salespeople_2,
яке б вивело лише записи продавців, які проживають у місті London.
drop view if exists V_Salespeople_2;
create view V_Salespeople_2 as
select *
from Salespeople_1
where
CITY = 'London';
SELECT * FROM V_Salespeople_2;
2. Спробуйте використати представлення V_Salespeople_2 для зміни свого міста проживання на Texas.
Перевірте наявність змін.
update V_Salespeople_2 set CITY = 'Texas' where SNUM = 1008;
SELECT * FROM V_Salespeople_2;
3. Спробуйте самостійно знайти спосіб, який заборонить вносити зміни у записи,
які представленням не відображаються. Переконайтеся у працездатності такого обмеження
спробувавши видалити свій запис.
create view V_Salespeople_3 as
select *
from Salespeople_1
where
CITY = 'London'
with
check option;
update V_Salespeople_3 set CITY = 'Texas' where SNUM = 1001;
SELECT * FROM V_Salespeople_3;