DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

З В І Т

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
ЗІ
Кафедра:
Кафедра САПР

Інформація про роботу

Рік:
2020
Тип роботи:
Інші
Предмет:
Програмування

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ УКРАЇНИ Національний університет «Львівська політехніка» Кафедра САПР З В І Т про виконання контрольної роботи з курсу: «Проектування банків даних для комп’ютерних систем проектування» Львів – 2010 ПОСТАНОВКА ЗАВДАННЯ Бібліотека обслуговує читачів. Вона складається з читальних залів. На кожного читача заведена карточка яка містить інформацію про читача і прочитані книги. В читальному залі працює персонал. Існує абонемент. Завдання: розробити інфологічну модель бази данних (далі БД), концептуальну модель, та написати запити на мові SQL, які будуть виконувати створення БД, створення таблиць та їх заповнення, вибірки даних, сортування і фільтрування, пошук даних з використанням регулярних виразів, створення обчислюваних полів, «Проектування банків даних для комп’ютерних систем проектування», «Робота із вкладеними запитами», Об’єднання таблиць Інфологічна модель “об’єкт – зв’язок”  Концептуальна модель  SQL запити на створення бази данних, таблиць та їх заповнення: SQL-запит для створення бази данних «Залізна дорога»: CREATE DATABASE `ZaliznaDoroga`; Створення таблиць: SQL-запит для створення таблиці «Пасажир»: CREATE TABLE Pasagur ( Seriya_Documenta varchar( 10 ) NOT NULL, Prizvushche varchar( 15 ) NOT NULL, Imya varchar( 15 ) NOT NULL, Po_Batkovi varchar( 15 ) NOT NULL, Nomer_bilety int( 30) default NULL , Nomer_poizdy int( 30) default NULL , PRIMARY KEY (Nomer_poizdy ) ) ENGINE = MYISAM DEFAULT CHARSET = utf8 SQL-запит для створення таблиці «Поїзд»: CREATE TABLE Poizd ( Nomer_poizdy int( 30) default NULL auto_increment, Tup_Poizdy varchar(30) default NULL , Kinceva_stanciya varchar( 30 ) NOT NULL, Chas_vidpravlennya varchar( 15 ) NOT NULL, Data_vidpravlennya varchar( 15 ) NOT NULL, Chas_prubyttya varchar( 20 ) default NULL , Data_prubyttya varchar( 20 ) default NULL , PRIMARY KEY (Nomer_poizdy) ) ENGINE = MYISAM DEFAULT CHARSET = utf8 SQL-запит для створення таблиці «Білет»: CREATE TABLE Bilet ( Nomer_bilety int( 10 ) NOT NULL, Misce int( 15 ) NOT NULL, Kinceva_stanciya varchar( 15 ) NOT NULL, Cina varchar( 15 ) NOT NULL, Vagon int(10) default NULL, PRIMARY KEY (Nomer_bilety) ) ENGINE = MYISAM DEFAULT CHARSET = utf8 SQL-запит для створення таблиці «Вагон»: CREATE TABLE Vagon ( Vagon int( 10 ) NOT NULL, Tup_vagony varchar( 15 ) NOT NULL, Providnuk varchar( 15 ) default NULL, Stan_vagony varchar( 15 ) default NULL, PRIMARY KEY (Vagon) ) ENGINE = MYISAM DEFAULT CHARSET = utf8 SQL-запит для створення таблиці «Характеристика вагону»: CREATE TABLE Harakterustuka_vagony ( Vagon int( 10 ) NOT NULL, Vugotovleuy varchar( 15 ) NOT NULL, Zavod varchar( 30 ) default NULL, PRIMARY KEY (Vagon) ) ENGINE = MYISAM DEFAULT CHARSET = utf8 Наповнення бази даних: Таблиця «Пасажири»: INSERT INTO Pasagur VALUES ('HJ98986', 'Oksencuk', 'Hrustuna', 'Olexandrivna', '45', '111'); INSERT INTO Pasagur VALUES ('MY88888', 'Danulko', 'Alina', 'Olegivna', '08', '503'); INSERT INTO Pasagur VALUES ('UH97987', 'Levuckyy', 'Sergiy', 'Volodumurovuch', '48', '231'); INSERT INTO Pasagur VALUES ('FD57892', 'Pavlovskyu', 'Sergiy', 'Ivanovuch', '56', '244'); INSERT INTO Pasagur VALUES ('SA32423', 'Pavlovska', 'Olga', 'Borusivna', '57', '012'); INSERT INTO Pasagur VALUES ('KO97343', 'Stratyk', 'Valeriy', 'Anatoliyevuch', '43', '235'); INSERT INTO Pasagur VALUES ('FD43545', 'Kyznecova', 'Olga', 'Vladuslavivna', '73', '156'); INSERT INTO Pasagur VALUES ('ER87873', 'Marchak', 'Andriy', 'Tarasovuch', '54', '464'); INSERT INTO Pasagur VALUES ('JI97733', 'Hroshovuk', 'Vitaliy', 'Serhiyovuch', '54', '615'); INSERT INTO Pasagur VALUES ('SS97673', 'Hitler', 'Adik', 'Zigmyndovuch', '66', '666'); Таблиця «Поїзд»: INSERT INTO Poizd VALUES (111,'Diesel', 'Krakiv', '15.42', '10.11.2010','06.25','12.11.2010'); INSERT INTO Poizd VALUES (503,'Electro', 'Dubno', '13.38', '08.11.2010','16.35','08.11.2010'); INSERT INTO Poizd VALUES (231,'Electro', 'Rivne', '16.22', '20.11.2010','06.45','20.11.2010'); INSERT INTO Poizd VALUES (244,'Diesel', 'Kyiv', '00.41', '16.11.2010','11.28','16.11.2010'); INSERT INTO Poizd VALUES (012,'Electro', 'Krasne', '13.38', '10.11.2010','14.38','10.11.2010'); INSERT INTO Poizd VALUES (235,'Diesel', 'Chernivci', '11.42', '12.11.2010','08.25','13.11.2010'); INSERT INTO Poizd VALUES (156,' Diesel', 'Praha', '07.12', '30.11.2010','09.92','01.12.2010'); INSERT INTO Poizd VALUES (464,' Diesel ', 'Kharkiv', '12.46', '10.11.2010','22.25','11.11.2010'); INSERT INTO Poizd VALUES (615,'Electro', 'Lutsk', '18.22', '22.11.2010','06.25','23.11.2010'); INSERT INTO Poizd VALUES (666,'Electro', 'Hell', '00.00', '01.11.2010','00.00','12.12.2012'); Таблиця «Білет»: INSERT INTO Bilet VALUES ('123', '45', 'Krakiv', '270uah', '12'); INSERT INTO Bilet VALUES ('265','08', 'Dubno', '12uah', '08'); INSERT INTO Bilet VALUES ('356','48', 'Rivne', '15uah', '07'); INSERT INTO Bilet VALUES ('456','56', 'Kyiv', '70uah', '01'); INSERT INTO Bilet VALUES ('542','57', 'Krasne', '6uah', '11'); INSERT INTO Bilet VALUES ('623','43', 'Chernivci', '50uah', '13'); INSERT INTO Bilet VALUES ('776','73', 'Praha', '420uah', '09'); INSERT INTO Bilet VALUES ('880','54', 'Kharkiv', '90uah', '05'); INSERT INTO Bilet VALUES ('934','54', 'Lutsk', '270uah', '10'); INSERT INTO Bilet VALUES ('101','66', 'Hell', '00uah', '06'); Таблиця «Вагон»: INSERT INTO Vagon VALUES ('12','SV', 'Nemurovskuy', 'Novuy'); INSERT INTO Vagon VALUES ('08','Zagalnuy', 'Paytash', 'Staruy'); INSERT INTO Vagon VALUES ('07','Zagalnuy', 'Kogut', 'Staruy'); INSERT INTO Vagon VALUES ('01','Plackart', 'Pukach', 'Staruy'); INSERT INTO Vagon VALUES ('11','Zagalnuy', 'Gendel', 'Novuy'); INSERT INTO Vagon VALUES ('13','Plackart', 'Babuch', 'Staruy'); INSERT INTO Vagon VALUES ('09','SV', 'Potapchuk', 'Novuy'); INSERT INTO Vagon VALUES ('05','Kype', 'Terlel', 'Staruy'); INSERT INTO Vagon VALUES ('10','Kype', 'Kabanov', 'Staruy'); INSERT INTO Vagon VALUES ('06','VIP', 'Devilovskuy', 'Novuy'); Таблиця «Характеристика вагону»: INSERT INTO Harakterustuka_vagony VALUES ('12','2001p', 'Warshava'); INSERT INTO Harakterustuka_vagony VALUES ('08','2000p', 'Lviv'); INSERT INTO Harakterustuka_vagony VALUES ('07','1996p', 'Lviv'); INSERT INTO Harakterustuka_vagony VALUES ('01','1978p', 'Donetsk'); INSERT INTO Harakterustuka_vagony VALUES ('11','2004p', 'Lviv'); INSERT INTO Harakterustuka_vagony VALUES ('13','2000p', 'Lviv'); INSERT INTO Harakterustuka_vagony VALUES ('09','1996p', 'Warshava'); INSERT INTO Harakterustuka_vagony VALUES ('05','1989p', 'Kharkiv'); INSERT INTO Harakterustuka_vagony VALUES ('10','1988p', 'Donetsk'); INSERT INTO Harakterustuka_vagony VALUES ('06','0001p', 'Edem'); SQL запити для вибірки даних, сортування і фільтрування SQL-запит для вибірки параметру «Кінцева станція» з таблиці «Білет». SELECT kinceva_stanciya FROM bilet;  SQL-запит для вибірки параметрів «Прізвище», «Ім’я» та «По батькові» з таблиці «Пасажир». SELECT prizvushche, imya, po_batkovi,seriya_documenta FROM pasagur;  SQL-запит для вибірки параметру «Вагон» та «Провідник» з таблиці «Вагон» з лімітом 6. SELECT vagon,providnuk FROM vagon LIMIT 6;  SQL-запит для вибірки параметрів «Вагон» та «Завод» з таблиці «Характеристика вагону» - всі окрім «Завод» = Львів. SELECT vagon, zavod FROM harakterustuka_vagony WHERE zavod <> 'Lviv';  SQL-запит для вибірки всіх параметрів з таблиці «Поїзд» - всі менше 250. SELECT * FROM poizd WHERE nomer_poizdy < '250';  SQL-запит для вибірки всіх параметрів з таблиці «Білет» - сортувати за номером вагону. SELECT * FROM bilet ORDER BY vagon ;  SQL-запит для вибірки всіх параметрів з таблиці «Поїзд» - Час відправлення від 00:00 да 12:00. SELECT * FROM poizd WHERE chas_vidpravlennya BETWEEN 00.00 AND 12.00;  Пошук даних з використанням регулярних виразів. Створення обчислюваних полів SQL-запит для пошуку параметру «№ білету» з таблиці «Білет» - сортувати за номером білету. SELECT nomer_bilety FROM bilet WHERE nomer_bilety REGEXP '.56' ORDER BY nomer_bilety;  SQL-запит для пошуку параметру «Прізвище» з таблиці «Пасажир» - сорутвати по прізвищу, всі де є буква «о». SELECT prizvushche FROM pasagur WHERE prizvushche REGEXP 'o' ORDER BY prizvushche;  SQL-запит для пошуку параметрів «Прізвище» та «Ім’я» з таблиці «Пасажир» - сортувати за прізвищем. SELECT Concat(prizvushche, '(', imja,')') FROM pasagur ORDER BY prizvushche;  SQL-запит для пошуку параметрів «Кінцева станція» та «Ціна» з таблиці «Білет» - створення цінника. SELECT Concat(RTrim(kinceva_stanciya), ' (', RTrim(cina), ')') AS Cinnuk FROM bilet ORDER BY kinceva_stanciya;  Групування даних SQL-запит для групування параметру «Номер білету» з таблиці «Білет». SELECT COUNT(*) AS nomer_bilety FROM bilet GROUP BY nomer_bilety;   SQL-запит для групування параметрів «Номер білету» та «Ціна» з таблиці «Білет». SELECT nomer_bilety, COUNT(*) AS cina FROM bilet GROUP BY nomer_bilety;     SQL-запит для групування параметрів «Номер білету» та «Ціна» з таблиці «Білет» - групувати за номером булету, сумма в квадраті, сортування за ціною. SELECT nomer_bilety, SUM( cina * cina ) FROM bilet GROUP BY nomer_bilety HAVING SUM( cina * cina ) ORDER BY cina;  Робота із вкладеними запитами SQL-запит вибірки параметру «Місце» з таблиці «Білет» - де вагон 11й.  SELECT misce FROM bilet WHERE vagon = '11';   SQL-запит вибірки параметрів «Ім'я», «По батькові» та «Прізвище» з таблиці «Пасажир» - де номер поїзду 111, 12, 156. SELECT imya , pobatkovi, prizvushche FROM pasagur WHERE nomer_poizdy IN (111,12,156)   SQL-запит вибірки параметру «Прізвище» з таблиці «Пасажир» - де тип поїзду дизель. SELECT prizvushche FROM pasagur WHERE nomer_poizdy IN (SELECT nomer_poizdy FROM poizd WHERE tup_poizdy = 'diesel');   SQL-запит вибірки параметру «Провідник» з таблиці «Вагон» - де «Вагон» з таблиці «Білет», де «Кінцева станція» з таблиці «Поїзд» де є «Час прибуття». SELECT providnuk FROM vagon WHERE vagon IN (SELECT vagon FROM bilet WHERE kinceva_stanciya IN (SELECT kinceva_stanciya FROM poizd WHERE chas_prubyttya));   Об’єднання таблиць SQL-запит для об’єднання параметрів «Прізвище», «Ім’я», «Кінцева станція» та «Ціна» в таблицях «Пасажир» та «Білет». SELECT prizvushche,imya,kinceva_stanciya,cina FROM pasagur, bilet WHERE pasagur.nomer_bilety=bilet.misce ORDER BY prizvushche;  SQL-запит для об’єднання параметрів «Вагон», «Завод» та «Виготовлений» в таблицях «Характеристика» та «Білет» - де «Ціна» більша 15грн. SELECT vagon,zavod,vugotovleuy FROM harakterustuka_vagony WHERE vagon in (SELECT vagon FROM bilet WHERE cina > 15);  SQL-запит для об’єднання параметрів «Прізвище та «Ім’я» в таблиці «Пасажир» - де «Номер білету» менший числу 50. SELECT p1.prizvushche,p2.imya FROM pasagur AS p1,pasagur AS p2 WHERE p1.nomer_bilety = p2.nomer_bilety AND p1.nomer_bilety < 50;  SQL-запит для створення форми квитка де знаходяться параметри «Прізвище», «Серія документу», «Дата відправлення» та «Час відправлення» з таблиць «Пасажир» та «Поїзд». SELECT pasagur.prizvushche,pasagur.seriya_documenta,poizd.data_vidpravlennya,poizd.chas_vidpravlennya FROM pasagur LEFT OUTER JOIN poizd ON pasagur.nomer_poizdy = poizd.nomer_poizdy;  Висновок: При виконанні данної контрольної роботи я освоїв основні правила і тези для створення баз данних, я навчився формувати інфологічну модель бази данних (далі БД), концептуальну модель, як правильно давати запити на мові SQL, які будуть виконувати створення БД, створення таблиць та їх заповнення, вибірки даних, сортування і фільтрування, пошук даних з використанням регулярних виразів, створення обчислюваних полів, групування даних, робота із вкладеними запитами, Об’єднання таблиць.    
Антиботан аватар за замовчуванням

20.07.2020 12:54

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!