80 lines
2.2 KiB
SQL
Executable File
80 lines
2.2 KiB
SQL
Executable File
use OrdersDB;
|
|
|
|
-- 3.1
|
|
-- Додайте у таблицю Salespeople себе у якості продавця
|
|
-- Додайте у таблицю Customers двох своїх напарників у якості
|
|
-- Ваших клієнтів Додайте дві угоди у таблицю Orders (
|
|
-- по одній для кожного з Ваших клієнтів
|
|
-- )
|
|
|
|
insert into
|
|
Salespeople (snum, sname, city, comm)
|
|
values (
|
|
1111,
|
|
'Vitalii',
|
|
'Zdolbuniv',
|
|
0.11
|
|
);
|
|
|
|
insert into
|
|
Customers (
|
|
cnum,
|
|
cname,
|
|
city,
|
|
rating,
|
|
snum
|
|
)
|
|
values (
|
|
2009,
|
|
'Oleg',
|
|
'Ostroh',
|
|
100,
|
|
1111
|
|
),
|
|
(
|
|
2010,
|
|
'Poman',
|
|
'Ostroh',
|
|
200,
|
|
1111
|
|
);
|
|
|
|
insert into
|
|
Orders (onum, amt, odate, cnum, snum)
|
|
values (
|
|
3012,
|
|
1000,
|
|
'2026-03-19',
|
|
2009,
|
|
1111
|
|
),
|
|
(
|
|
3013,
|
|
2000,
|
|
'2026-03-19',
|
|
2010,
|
|
1111
|
|
);
|
|
|
|
-- 3.2
|
|
-- Накладіть додаткові обмеження на зовнішні ключі snum у таблицях Customers та Orders: ON DELETE CASCADE ON UPDATE CASCADE
|
|
-- Спробуйте змінити для себе у таблиці Salespeople значення snum, збільшивши його на 1
|
|
-- перевірте чи з'явилися відповідні зміни у таблицях Customers та Orders
|
|
-- Спробуйте видалити свій запис продавця у таблиці Salespeople
|
|
-- перевірте чи спрацювало каскадне видалення пов'язаних записів у таблицях Customers та Orders
|
|
|
|
alter table Customers drop constraint Customers_ibfk_1;
|
|
|
|
alter table Orders drop constraint Orders_ibfk_1;
|
|
|
|
alter table Customers
|
|
add constraint Customers_ibfk_1 foreign key (snum) references Salespeople (snum) on delete cascade on update cascade;
|
|
|
|
alter table Orders
|
|
add constraint Orders_ibfk_1 foreign key (snum) references Salespeople (snum) on delete cascade on update cascade;
|
|
|
|
update Customers set snum = 1112 where snum = 1111;
|
|
|
|
update Orders set snum = 1112 where snum = 1111;
|
|
|
|
delete from Salespeople where snum = 1112; |