Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Кафедра ЕОМ
/
Звіт
до лабораторної роботи № 4
з дисципліни: «Організація баз даних»
«Використання збережених процедур та синонімів для переливки даних між базами»
Варіант №11
Мета роботи: Отримати навики використання збережених процедур та синонімів
Завдання:
На існуючому сервері створити ще одну базу даних із назвою <навзва_попередньої_>report
До щойно створеної бази даних додати 2 таблиці для збереження звітної інформації (Наприклад якщо у вас є база даних Supermarket із таблицями Products, Customers, Transactions потрібно створити ще одну базу Supermarket_report із таблицями Products_Report, Transactions_Report. Нові таблиці мають мати такий самий список колонок, що і попередні)
Створити збережену процедуру (stored procedure) із одним цілочисельним параметром. До створеної процедури додати код за допомогою якого дані будуть копіюватись з однієї бази у іншу. Придумати умову для переливання даних. Процедуру зберегти у базі даних, що використовувалась у попередніх лабораторних роботах. (Приклад виконання наведено нижче).
У базі даних <навзва_попередньої_>report створити синонім на попередньо створену збережену процедуру.
Варіант № 11 - База даних цирку
Створення нової БД та таблиць:
create database Circus_report
use Circus_report
go
CREATE TABLE CUST_report (
ID INT PRIMARY KEY,
FirstName VARCHAR (25),
SecondName VARCHAR (25));
CREATE TABLE TICKET_report (
TicketID INT PRIMARY KEY,
CustomerID INT,
ShowNum INT);
CREATE TABLE SHOW_report (
ShowID INT PRIMARY KEY,
ShowName VARCHAR (45),
date_n_time DATETIME,
);
CREATE TABLE REF_TICK_SHOW_report (
ticket_id INT,
show_id INT,
PRIMARY KEY (ticket_id , show_id )
);
CREATE TABLE SHOW_PRICE_report (
Price REAL PRIMARY KEY,
show_id INT
);
Створення процедури та синоніму:
use Circus_2
go
create procedure dbo.CopyData
@KeyColumn int
as
begin
insert into Circus_report.dbo.CUST_report
select * from Circus_2.dbo.CUST
where ID < @KeyColumn
insert into Circus_report.dbo.TICKET_report
select * from Circus_2.dbo.TICKET
where TicketID > @KeyColumn
insert into Circus_report.dbo.SHOW_report
select * from Circus_2.dbo.SHOW
where ShowID <= @KeyColumn
insert into Circus_report.dbo.REF_TICK_SHOW_report
select * from Circus_2.dbo.REF_TICK_SHOW
where show_id < @KeyColumn
insert into Circus_report.dbo.SHOW_PRICE_report
select * from Circus_2.dbo.SHOW_PRICE
where Price < @KeyColumn
end
go
use Circus_report
go
create synonym dbo.SynCopyData for Circus_2.dbo.CopyData
Виконання процедури:
use Circus_2
go
exec dbo.CopyData @KeyColumn = 1005
CUST_report TICKET_report SHOW_report
/ / /
REF_TICK_SHOW_report SHOW_PRICE_report
/ /
Висновок. На даній лабораторній роботі я отримала навики використання збережених процедур та синонімів
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!