Главная страница

Контрольная работа по КТиБД. ФакультетПриборостроение и техническое регулирование Заочная форма обучения


Скачать 169.12 Kb.
НазваниеФакультетПриборостроение и техническое регулирование Заочная форма обучения
Дата24.06.2022
Размер169.12 Kb.
Формат файлаdocx
Имя файлаКонтрольная работа по КТиБД .docx
ТипКонтрольная работа
#613123

Донской государственный технический университет
факультет«Приборостроение и техническое регулирование»

Заочная форма обучения

Студент: Бурылов А.Э.

Адрес: burylov.sanya@yandex.ru
Группа ПЗСМ11

Шифр 2178234

(номер зачетной книжки)
Контрольная работа

Компьютерные технологии и базы данных

За 1 курс

Вариант №4
Содержание контрольной работы


Автомобили:

- государственный номер;

- марка;

- информация

Водители:

- ФИО;

- профессия;

- принадлежность (т.е. в каком цехе (гараж, бокс) работает);

- закрепление (применительно к водителям, за каким автомобилем закреплен).

Цеха:

- вид транспорта (т.е. транспорт какой категории располагается в данном гараже);

Профессии:

-названия профессий

Работы:

-названия ремонтных работ, которые выполняют рабочие

Получение авто:

-дата получения;

Списание авто:

-дата списания;

Виды перевозок, осуществляемые на этом авто:

-дата перевозки;

-количество пассажиров;

Распределение авто по маршрутам:

-дата распределения;

-количество;

Маршруты:

-название маршрута;

-длина маршрута.

Связь 1 к ∞ реализуется следующим образом: ключ из главной таблицы переносится в вспомогательную таблицу.

Связь ∞ к ∞ реализуется следующим способом: создается новая таблица в которую переносятся ключевые поля из связуемых таблиц.

В среде Access были созданы 13 таблиц. Далее представлены характеристики и свойства полей данных таблиц:
Avto (Kod_Avto, Gosnomer_Avto, Marka_Avto, Inform_Avto, Kod_Vidatransp, Kod_Polychenia, Kod_Spisania)

Raspredelenie ( Kod_ Raspredelenia ,Date_ Raspredelenia,Kod_Marsh, Kod_Avto, Kol-vo_Avto)

Marshryti (Kod_Marsh, Dina_marsh)

Polychenie (Kod_Polychenia, Date_ Polychenia)

Perevozki (Kod_Perevozki,kod_Avto, Date_Perevozki, Kol-vo_Passajirov)

Spisanie ( Kod_Spisania, Date_Spisania)

Remont(Kod_Remont, Date_Remont,

Stoimost_Remont,Kod_Avto,Kod_Rabot,Kod_VidaRemont)

Vid remonta( Kod_Vidaremonta,Vid_Remonta)

Voditeli (Kod_Vodit, Kod Profes, Fam_Vodit, Name_Vodit, Otch_Vodit, Kod_Cheha, Kod_Avto)

Professia (Kod_Profes,Nazv_Profes)

Cheha(Kod_Cheha, Nazv_Cheha, Kod_ Vidatransp)

Rabochie( Kod_Rabot, Nazv_Rabot , kod_Profes, Kod_Cheha)

Transport( Kod_Vidattansp, Vid_Transp)
Описание хранимых атрибутов




Обозначение

Тип, длина

Полное наименование атрибута




Kod_Avto

N(2)

Код авто




Gonomer_Avto

C(6)

Гос.номер авто




Marka_Avto

C(10)

Марка авто




Inform_Avto

C(20)

Информация об авто




Kod_Raspredelenia

N(2)

Код распределения




Date_Raspredelenia

D(8)

Дата распределения




Kod_Marsh

N(2)

Код маршрута




Kol-vo_Avto

N(3)

Количество авто




Nazv_Marsh

C(20)

Название маршрута




Dlina_Marsh

N(6)

Длина маршрута




Kod_Perevozki

N(2)

Код перевозки




Date_Perevozki

D(8)

Дата перевозки




Kol-vo_Passajirov

N(3)

Количество пассажиров




Kod_Polychenia

N(2)

код получения




Date_Polychenia

D(8)

Дата получения




Kod_Spisania

N(2)

Код списания




Date_Spisania

D(8)

Дата списания




Kod_Remont

N(2)

Код ремонта




Date_Remont

D(8)

Дата ремонта




Stoimost_Remont

N(10,2)

Стоимость ремонта




Kod_VidaRemont

N(2)

Код вида ремонта




Vid_Remont

C(10)

Вид ремонта




Kod_Vodit

N(2)

Код водителя




Fam_Vodit

C(10)

Фамилия водителя




Name_Vodit

C(10)

Имя водителя




Otch_Vodit

C(10)

Отчество водителя




Kod_Cheha

N(2)

Код цеха




Nazv_Cheha

C(10)

Название цеха




Kod_Profes

N(2)

Код профессии




Nazv_Profes

C(10)

Название профессии




Kod_Rabot

N(2)

Код работ




Nazv_Rabot

C(10)

Название работ




Kod_VidaTransp

N(2)

Код вида транспорта




Vid_Transp

C(10)

Вид транспорта




Схема отношения в первой нормальной форме состоит из:

34 хранимых атрибутов и в которой ключ не выделен, но допускается его выделение:
R(Kod_Avto ,Gonomer_Avto ,Marka_Avto, Inform_Avto, Kod_Raspredelenia , Date_Raspredelenia, Kod_Marsh ,Kol-vo_Avto ,Nazv_Marsh ,Dlina_Marsh ,Kod_Perevozki , Date_Perevozki , Kol-vo_Passajirov , Kod_Polychenia, Date_Polychenia ,Kod_Spisania , Date_Spisania , Kod_Remont ,Date_Remont, Stoimost_Remont , Kod_VidaRemont , Vid_Remont , Kod_Vodit, Fam_Vodit, Name_Vodit ,Otch_Vodit, Kod_Cheha, Nazv_Cheha, Kod_Profes, Nazv_Profes, Kod_Rabot, Nazv_Rabot ,Kod_VidaTransp ,Vid_Transp)
Отношение во второй НФ – это отношение в первой НФ, в котором любой реквизит, не входящий в состав ключа, полно зависит от ключа.
R1[Kod_Avto#, Gosnomer_Avto, Marka_Avto, Inform_Avto];

R2[Kod_Raspredelenia#, Date_raspredelenia, Kod_Marsh, Nazv_Marsh, Dlina_Marsh];

R3[Kod_Perevozki#, Date_Perevozki, Kol-vo_Passajirov];

R4[Kod_Polychenia#, Date_Polychenia];

R5[Kod_Spisania#, Date_Spisania];

R6[Kod_Remont#, Date_Remont, Stoimost_Remont, Kod_VidaRemont, Vid_Remont];

R7[Kod_Vodit#,Fam_Vodit, Name_Vodit, Otch_Vodit];

R8[Kod_Profes#,Nazv_Profes].

R9[Kod_Cheha#,Nazv_Cheha].

R10[Kod_Rabot#,Nazv_Rabot].

R11[Kod_VidaTransp#,Vid_Transp].
Отношение в третьей НФ – это отношение во второй НФ, в котором любой реквизит, не входящий в состав ключа, не транзитивно зависит от ключа.
Avto [Kod_Avto, Gosnomer_Avto, Marka_Avto, Inform_Avto] - автомобили

Raspredelenie [Kod_Raspredelenia, Date_raspredelenia, Kod_Marsh, Nazv_Marsh, Dlina_Marsh] – распределение автомобалей

Perevozki [Kod_Perevozki, Date_Perevozki, Kol-vo_Passajirov] – осуществляемые перевозки на этих автомобилях

Polychenie [Kod_Polychenia, Date_Polychenia] – получение авто

Spisanie [Kod_Spisania, Date_Spisania] - списание авто

Remont [Kod_Remont, Date_Remont, Stoimost_Remont, Kod_VidaRemont, Vid_Remont] – ремонт авто

Voditeli [Kod_Vodit,Fam_Vodit, Name_Vodit, Otch_Vodit] – водители авто

Profesii [Kod_Profes,Nazv_Profes] - профессии

Cheha [Kod_Cheha,Nazv_Cheha] - цеха

Rabochie [Kod_Rabot,Nazv_Rabot] - рабочие

Transport [Kod_VidaTransp,Vid_Transp] - транпорт
ER-модель



Рис.1 ER-модель

3.3 Построение схемы данных



Рис.2 Схема данных

Маршруты – распределение

Kod_Marsh 1-∞ Код маршрута

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Автомобили - перевозки

Kod_Avto 1-1 Код перевозки

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Автомобили - распределение

Kod_Avto1-∞ Код авто

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Получение - автомобили

Kod_Polychenia 1-∞ Код получения

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Списание – автомобили


Kod_Spisania 1-∞Код списания

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Автомобили – ремонт


Kod_Avto 1-∞ Код авто

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Вид ремонта- ремонт


Kod_Remont 1-∞Код ремонта

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Автомобили- водители


Kod_Avto1-∞ Код авто

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Профессии – водители


Kod_Profes-∞ Код профессии

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Цеха-водители


Kod_Cheha 1-∞ Код цеха

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Цеха- рабочие


Kod_Cheha 1-∞ Код цеха

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Траспорт – автомобили


Kod_Transport 1-∞ Код транспорта

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим

Транспорт – цеха


Kod_Transport 1-∞ Код потранспорта

Атрибуты: обеспечение целостности, каскадные обновления, каскадные удаления

Атрибуты: один-ко-многим


Глава 4. Реализация СУБД
Приложение №1 Запросы
Создание SQL запросов
SQL - язык, который дает вам возможность создавать и работать в реляционных базах данных, содержащиеся в базе, управлять ими и налагать правила, обеспечивающие целостность реляционных данных, которые являются наборами связанной информации сохраняемой в таблицах.

Чтобы войти в режим SQL в access нужно в поле конструктора запроса нажать правой кнопкой и в появившемся окне нажать “Режим SQL”.

Запрос №1

SELECT *

FROM avto;
Запрос №2
SELECT avto.Kod_Avto, avto.GosNomer_Avto, avto.Marka_Avto, raspredelenie.Date_Raspredelenia

FROM avto INNER JOIN raspredelenie ON avto.Kod_Avto = raspredelenie.Kod_Avto

WHERE (((raspredelenie.Kod_Raspredelenia)=[a].[Kod_Avto]) AND ((avto.Marka_Avto)=[Введите марку]))

ORDER BY avto.Kod_Avto;


запрос 2


запрос 2
Запрос №3
SELECT Max(perevozki.Date_Perevozki) AS [Max-Date_Perevozki], marshryti.Nazv_Marsh, marshryti.Dlina_Marsh

FROM marshryti, perevozki

WHERE (((marshryti.Dlina_Marsh)>=150))

GROUP BY marshryti.Nazv_Marsh, marshryti.Dlina_Marsh;
Запрос №4
SELECT avto.Marka_Avto, avto.GosNomer_Avto, remont.Stoimost_Remont, remont.Date_Remont

FROM avto INNER JOIN remont ON avto.Kod_Avto = remont.Kod_Avto

WHERE (((remont.Date_Remont)=#12/17/2008#))

GROUP BY avto.Marka_Avto, avto.GosNomer_Avto, remont.Stoimost_Remont, remont.Date_Remont

ORDER BY avto.Marka_Avto;

Запрос №5
SELECT avto.Marka_Avto, polychenie.Date_Polychenia, raspredelenie.Date_Raspredelenia, raspredelenie.[kol-vo_Avto], spisanie.Date_Spisania, voditeli.[Fam-Vodit], remont.Date_Remont, remont.Stoimost_Remont

FROM spisanie INNER JOIN (polychenie INNER JOIN (((avto INNER JOIN raspredelenie ON avto.Kod_Avto = raspredelenie.Kod_Avto) INNER JOIN remont ON avto.Kod_Avto = remont.Kod_Avto) INNER JOIN voditeli ON avto.Kod_Avto = voditeli.Kod_Avto) ON polychenie.Kod_Polychenia = avto.Kod_Polychenia) ON spisanie.Kod_Spisania = avto.Kod_Spisania

GROUP BY avto.Marka_Avto, polychenie.Date_Polychenia, raspredelenie.Date_Raspredelenia, raspredelenie.[kol-vo_Avto], spisanie.Date_Spisania, voditeli.[Fam-Vodit], remont.Date_Remont, remont.Stoimost_Remont

HAVING (((avto.Marka_Avto)="волга"));
Запрос №6
SELECT *

FROM avto AS avto LEFT JOIN voditeli AS voditeli ON voditeli.Kod_Avto=avto.Kod_Avto

WHERE voditeli.Kod_Avto>5;
Запрос №7
SELECT *

FROM cheha AS c LEFT JOIN voditeli AS v ON c.kod_Cheha = v.Kod_Cheha

WHERE (((v.Kod_Cheha)>1));

Запрос №8
SELECT avto.Kod_Avto, avto.GosNomer_Avto, avto.Marka_Avto, avto.Inform_Avto, raspredelenie.Date_Raspredelenia

FROM avto INNER JOIN raspredelenie ON avto.Kod_Avto = raspredelenie.Kod_Avto

WHERE (((avto.Kod_Avto)=[raspredelenie].[Kod_Avto]))

ORDER BY avto.GosNomer_Avto;
Запрос №9
SELECT voditeli.[Fam-Vodit], voditeli.Name_Vodit, voditeli.Otch_Vodit

FROM voditeli

ORDER BY voditeli.[Fam-Vodit];
Запрос №10
SELECT avto.GosNomer_Avto, avto.Marka_Avto, perevozki.Date_Perevozki, perevozki.[kol-vo_Passajirov]

FROM avto INNER JOIN perevozki ON avto.Kod_Avto = perevozki.kod_Avto

ORDER BY avto.GosNomer_Avto, avto.Marka_Avto, perevozki.Date_Perevozki, perevozki.[kol-vo_Passajirov];
Запрос №11
SELECT avto.GosNomer_Avto, raspredelenie.[kol-vo_Avto]

FROM avto INNER JOIN raspredelenie ON avto.Kod_Avto = raspredelenie.Kod_Avto

GROUP BY avto.GosNomer_Avto, raspredelenie.[kol-vo_Avto]

ORDER BY raspredelenie.[kol-vo_Avto];
Запрос №12
SELECT voditeli.[Fam-Vodit], avto.Marka_Avto, perevozki.Date_Perevozki, Sum(perevozki.[kol-vo_Passajirov]) AS [Sum-kol-vo_Passajirov]

FROM marshryti, (avto INNER JOIN perevozki ON avto.Kod_Avto = perevozki.Kod_Avto) INNER JOIN voditeli ON avto.Kod_Avto = voditeli.Kod_Avto

GROUP BY voditeli.[Fam-Vodit], avto.Marka_Avto, perevozki.Date_Perevozki

HAVING (((perevozki.Date_Perevozki)=#12/9/2008#))

ORDER BY voditeli.[Fam-Vodit];
Запрос №13

Запрос №14


Запрос №15


Приложение №2 Формы





форма «автомобили»


форма «маршруты»



форма «отчеты»


форма «старт»

Приложение №3 Отчеты


отчет «перевозки по маршрутам»



Рис.37 отчет «ремонт автомобилей»


написать администратору сайта