Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
ERD предметної області, що автоматизується↑ ⇐ ПредыдущаяСтр 3 из 3 Содержание книги
Поиск на нашем сайте
Змістовний опис обмежень цілісності
Для всіх зв'язків встановлено каскадне видалення (після видалення сутності повинні видаляти всі пов'язані з ним об'єкти). Логічний проект бази даних Опис таблиць бази даних з обмеженнями цілісності CREATE TABLE aircrafttype ( Name VARCHAR(50) CONSTRAINT c1 PRIMARY KEY, PlaceCount INTEGER CONSTRAINT c2 NOT NULL, CarCapacity INTEGER CONSTRAINT c3 NOT NULL );
CREATE TABLE aricompany ( Name VARCHAR(100) CONSTRAINT c4 PRIMARY KEY );
CREATE TABLE reg_organ ( Name VARCHAR(100) CONSTRAINT c5 PRIMARY KEY );
CREATE TABLE registration ( ID INTEGER CONSTRAINT c6 PRIMARY KEY, RegDate DATE CONSTRAINT c7 NOT NULL, Place VARCHAR(50) CONSTRAINT c8 NOT NULL Owner VARCHAR(70) CONSTRAINT c19 NOT NULL Ag_sign VARCHAR(10) CONSTRAINT c9 CHECK (Ag_sign in (‘Yes’, ‘No’)), OrganName VARCHAR(100) CONSTRAINT c10 REFERENCES reg_organ(Name) ON DELETE CASCADE );
CREATE TABLE aircraft ( Hull_No INTEGER CONSTRAINT c11 PRIMARY KEY ac_type VARCHAR(50) CONSTRAINT c12 REFERENCES aircrafttype (Name) ON DELETE CASCADE compnyname VARCHAR(100) CONSTRAINT c13 REFERENCES aircompany(Name) ON DELETE CASCADE RegID INTEGER CONSTRAINT c14 REFERENCES registration (ID) ON DELETE CASCADE );
CREATE TABLE service (//служба Name VARCHAR(50) CONSTRAINT c15 PRIMARY KEY );
CREATE TABLE serv (//обслуживание srvDate DATE CONSTRAING c16 PRIMARY KEY result VARCHAR(20) CONSTRAINT NOT NULL servName VARCHAR(50) CONSTRAINT c17 REFERENCES service(Name) ON DELETE CASCADE Hull_No INTEGER CONSTRAINT c18 REFERENCES aircraft(Hull_No) ON DELETE CASCADE ); Опис запитів по вибору даних, що реалізують описані задачі 1. Видати список всіх зареєстрованих повітряних суден (бортовий номер, власник, реєструючий орган)
SELECT aircraft.Null_No, registration.Owner, reg_organ.Name FROM aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name;
2. Видати всі результати обслуговування повітряного судна (бортовий номер, результати) за період з 1.01.2011 по 1.01.2012 SELECT aircraft.hull_No, serv.result FROM serv, service, aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name and service.Name = serv.servName and serv.Null_No=aircraft.Null_No and serv.srvDate BETWEEN TO_DATE(‘1.01.2011’, ‘DD.MM.YYYY) AND TO_DATE(‘1.01.2012’,’DD.MM.YYYY’);
3. Видати перелік авіакомпаній, судна яких зареєстровані
SELECT aircompany.Name FROM aircompany, aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name and aircraft.companyname = aircompany.Name
4. Видати список зареєстрованих повітряних суден (бортові номери, назви типів) з кількістю місць менше 250
SELECT aircraft.Hull_NO, aircrafttype.Name FROM aircrafttype, aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name and aircrafttype.Name = aircraft.ac_type and aircrafttype.placecount<250;
5. Вивести список служб, які обслуговували певний рейс SELECT serv.ServName FROM serv, aircraft, WHERE serv.Hull_No=aircraft.Hull_No and Aircraft.id=148;
6. Видати повітряні судна заданої авіакомпанії (бортові номери), що пройшли повторну реєстрацію
SELECT aircraft.Hull_NO FROM aircompany, aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name and aircraft.companyname = ‘Авиакомпания#1’;
7. Видати кількість літаків певного типу, що належать заданій авіакомпанії
SELECT COUNT(*) FROM aircraft, registration, reg_organ WHERE aircraft. RegID = registration.ID and registration.OrganName = reg_organ.name and aircraft.tp_Name=’АН-140’ and aircraft.companyname=’Авиакомпания#2’;
8. Вибрати ті судна (бортові номери) АН-140, які не проходили обслуговування в періодс 1.01.2011 до 01.01.2012
SELECT aircraft.hull_No FROM aircraft, aircrafttype WHERE aircraft.ac_type = aircrafttype.Name AND aircraft.ac_type=’АН-140’ AND aircraft.Hull_No NOT IN ( SELECT aircraft.Hull_No FROM aircraft, serv WHERE serv.Hull_No = aircraft.hull_No AND serv.srvDate not BETWEEN TO_DATE(‘1.01.2011’, ‘DD.MM.YYYY) AND TO_DATE(‘1.01.2012’,’DD.MM.YYYY’); );
Висновки Проектування баз даних — це складний, багатокроковий процес перетворення інформаційного середовища ПО у інформаційну модель у вигляді бази даних. Цей процес складається з різних етапів, а саме: розробка стратегії автоматизації, аналіз ПО, побудова концептуальної моделі ПО, логічне та фізичне проектування БД. На сучасному етапі розвитку інформатики проектування баз даних перетворилося на цілком сформовану наукову дисципліну, яка має у своєму складі формально-теоретичну та технологічну складові. Теоретичної основою проектування баз даних є теорія нормалізації, яка дозволяє чітко і строго відповісти на таке запитання: як слід проводити перетворення початкової схеми ПО таким чином, щоб результуюча схема бази даних була еквівалентна початковій і була краща за неї. Методологія проектування детально описує усі етапи життєвого циклу створення бази даних з використанням сучасних мов опису ПО. Ціллю даної курсової роботи було створення бази даних реєстрації повітряних суден України. Для виконання роботи були проведені всі необхідні дослідження щодо розробки стратегії автоматизації; окрім того, було досліджено предметну область, для якої розроблювалась база даних. Після цього був проведений аналіз ПО в результаті якого був отриманий змістовний опис ПО. Для аналізу ПО використовувалися наявні документи, а саме: журнали реєстрацій суден; правила та загальні пункти реєстрації. Після цього була побудована концептуальна модель. Для цього була використана мова ER-опису ПО, яка базується на концепції, що інформаційна модель будь-якої ПО може бути описана із застосування таких понять, Як сутність, атрибут, зв’язок. Крім того, ця мова є суттєво графічною, що дає можливість наочно представляти концептуальну модель ПО. При побудові концептуальної моделі неявно використовувалися результати теорії нормалізації, у зв’язку з цим побудована модель представлена у третій нормальній формі. Необхідності використання більш високих нормальних форм не було, так як у предметній області не були виявлені складні види транзитивних функціональних залежностей, а також багатозначні залежності. Логічне та фізичне проектування БД складалося з конвертації концептуальної моделі ПО у реляційну модель даних. При цьому був використаний алгоритм конвертування схеми ПО у мові ER в схему реляційної бази даних. Після цього реляційна база даних була представлена у вигляді команд створення таблиць бази даних у мові SQL ORACLE. Крім того, у мові SQL описані деякі інформаційно-пошукові запити. Виконана курсова робота надала мені можливості ознайомитися з технологією проектування баз даних, та отримати практичний досвід у проектуванні бази даних з конкретної предметної області.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-01; просмотров: 280; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.188.211.246 (0.006 с.) |