Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Кафедра ЕОМ
/
Звіт
до лабораторної роботи № 5
з дисципліни: «Організація баз даних»
«Створення та використання представлень, функцій та тригерів»
Варіант №11
Львів 2018
Мета роботи: Отримати навики використання функцій, представлень та тригерів.
Завдання:
До кожної таблиці, що була створена у попередніх лабораторних роботах створити представлення
До довільної таблиці додати колонку із типом datetime, яка буде автоматично заповнюватись за допомогою тригера під час INSERT операції.
Написати 3 запити із довільними вбудованими функціями
Написати одну користувацьку функцію, яка повертає скалярне значення і одну користувацьку функцію, яка повертатиме таблицю
Створення представлення до кожної таблиці із попередніх лабораторних робіт:
create view CustView as select CUST.ID as vID, CUST.FirstName as vFirstName, CUST.SecondName as vSecondName from CUST;
create view TicketView as select TICKET.TicketID as vTicketID, TICKET.CustomerID as vCustID, TICKET.ShowNum as vShowNum from TICKET;
create view ShowView as select SHOW.ShowID as vShowID, SHOW.ShowName as vShowName, SHOW.date_n_time as vdate from SHOW;
create view RefView as select REF_TICK_SHOW.ticket_id as vTicket_id, REF_TICK_SHOW.show_id as vShow_id from REF_TICK_SHOW;
create view Show_priceView as select SHOW_PRICE.Price as vPrice, SHOW_PRICE.show_id as vShow_id from SHOW_PRICE;
Додати колонку із типом datetime, яка буде автоматично заповнюватись за допомогою тригера під час INSERT операції:
create trigger CUSTdate_trigger on CUST
after Insert
as
begin
update CUST set datelog = GETDATE()
where ID in (select ID from inserted)
End
INSERT INTO CUST(ID, FirstName, SecondName) VALUES('145','Brian','May');
Select * FROM CUST
/
Рис.1. Використання тригера.
Використання трьох довільних вбудованих функцій
select COUNT(*) as NumberOfCustomers from CUST
select MAX(SHOW_PRICE.Price) as MaximumPrice from SHOW_PRICE
select MIN(SHOW_PRICE.Price) as MinimumPrice from SHOW_PRICE
/
Рис.2. Результат виконання.
Створити одну користувацьку функцію, яка повертає скалярне значення і одну користувацьку функцію, яка повертатиме таблицю:
create function MulFunc (@A int, @B int)
returns int
as begin
return @A*@B
End
go
select dbo.MulFunc(30, 5);
/
Рис.3. Користувацька функція (повертає скалярне значення).
CREATE FUNCTION CustIDfunc
(
@OrderID INT
)
RETURNS TABLE
RETURN
SELECT
*
FROM CUST
inner join TICKET on CUST.ID =TICKET.CustomerID
where CUST.ID=@OrderID
go
select * from CustIDfunc(125);
/
Рис.4. Користувацька функція (повертає таблицю).
Висновок: На даній лабораторній роботі я отримала навики використання функцій, представлень та тригерів.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!