Проектирование и разработка БД «Автосервис».
Заказать уникальную курсовую работу- 29 29 страниц
- 5 + 5 источников
- Добавлена 16.07.2024
- Содержание
- Часть работы
- Список литературы
Введение 5
1. Основная часть 7
1.1 Идеалогическое проектирование 7
1.2 Обоснование выбора СУБД 11
1.3 Схематичное проектирование 14
1.3.1 Преобразование концептуальной модели в реляционную модель 14
1.3.2 Логическая модель данных 16
1.3.3 Определение характеристик атрибутов 17
2. Создание БД в выбранной СУБД 19
2.1 Создание базы данных «Автосервис» 19
2.2 Запросы к базе данных 21
3. Поддержка целостности данных 23
1.1 Декларативная поддержка ограничений целостности 23
4. Создание процедуры и триггеров 25
4.1 Хранимая процедуры 25
4.2 Триггеры 25
Заключение 27
Список использованных источников 28
На рисунках 5-9 показана структура созданных таблиц для базы данных «Автосервис»:Рисунок 5 – структура таблицы «Клиент»Рисунок 6 – структура таблицы «Автомобиль»Рисунок 7 – структура таблицы «Услуга»Рисунок 8 – структура таблицы «Заказ»Рисунок 9 – структура таблицы «Сотрудник»Итогом разработки базы данных стала модель, отражающая индексы и связи таблицы базы данных «Автосервис».2.2 Запросы к базе данныхДалее были разработаны запросы к нашей базе данных, связанные с заполнением таблиц. Запросы к базе данных показаны на рисунках 10 – 14:Рисунок 10 – заполнение таблицы «Клиент»Рисунок 11 – заполнение таблицы «Автомобиль»Рисунок 12 – заполнение таблицы «Услуга»Рисунок 13 – заполнение таблицы «Сотрудник»Рисунок 14 – заполнение таблицы «Заказ»Поддержка целостности данныхДекларативная поддержка ограничений целостностиГарантирование целостности базы данных подразумевает соблюдение определенного набора правил, которые необходимы для сохранения консистентности хранимых данных. Среди этих правил можно выделить ограничения на значения атрибутов отношений и структурные ограничения на кортежи отношений.Первый вид ограничений предполагает проверку значений атрибутов отношений.Структурные ограничения устанавливают два ключевых требования целостности, которые должны соблюдаться в реляционных СУБД: требование целостности сущностей и требование целостности ссылок. Каждому экземпляру сущности, представленному в отношении, соответствует только один кортеж. Первое требование гласит, что каждый кортеж отношения должен быть уникальным в рамках этого отношения, то есть каждое отношение должно иметь первичный ключ.Формулировка второго требования тесно связана с понятием внешнего ключа. Требование целостности по ссылкам состоит в том, что для каждого значения внешнего ключа родительской таблицы должна найтись строка в дочерней таблице с таким же значением первичного ключа.В MSSQLServer поддержка ссылочной целостности выполняется с помощью настройки связей таблиц, например, в диаграмме связей. В данном курсовом проекте ссылочная целостность формировалась с помощью настройки связей таблиц так, как показано на рисунке 15:Рисунок 15 – настройка связей таблиц базы данных дляцелостностиСоздание процедуры и триггеров4.1 Хранимая процедурыЧтобы иметь возможность для вычисления максимальной и минимальной стоимости услуги разработана следующая процедура для таблицы «Услуга»:USE [Avtoservice]GO/****** Object: StoredProcedure [dbo].[GetPrice] Script Date: 15.06.2024 21:30:06 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROCEDURE [dbo].[GetPrice]@minPrice MONEYOUTPUT,@maxPrice MONEYOUTPUTASSELECT @minPrice=MIN(Стоимость), @maxPrice=MAX(Стоимость)FROM Стоимость4.2 ТриггерыТакже разработаны несколько триггеров:Первый триггер для автоматического обновления статуса заказа при изменении его даты:CREATE TRIGGER UOSON ЗаказAFTER UPDATEASBEGIN IF UPDATE(Дата_завершения) BEGIN UPDATE Заказ SET Статус = CASE WHEN DATEDIFF(DAY, Дата_завершения, GETDATE()) > 0 THEN 'Просрочен' ELSE 'Активен' END FROM insertedWHEREЗаказ.Код_заказа = inserted.Код_заказаENDENDТриггер, который будет автоматически обновлять общую стоимость заказа при добавлении новой услуги к заказу или изменении стоимости услуги:CREATE TRIGGER UTCON ЗаказAFTER INSERT, UPDATEASBEGINUPDATEЗаказSETОбщая_Стоимость = (SELECTSUM(Услуга.Стоимость)FROMУслугаINNERJOINУслугаONКод_услуги = Услуга.ID_УслугиWHEREКод_заказа = inserted.ID)FROM Заказ INNER JOIN inserted ON Код_заказа = inserted.IDENDЗаключениеОсновная цель моей курсовой работы заключалась в создании базы данных «Автосервис», которая бы значительно упростила обработку данных.В процессе исследования предметной области были изучены особенности работы автосервисов и должностные обязанности их сотрудников.Кроме того, была подробно описана постановка задачи и определены ключевые аспекты, которые необходимо учесть при разработке базы данных.Список выделенных сущностей и их атрибутов был тщательно рассмотрен, а также была создана модель «Сущность-связь».База данных включает в себя несколько таблиц, между которыми определены связи. Также были исследованы функциональные связи между атрибутами выделенных сущностей.Для успешной реализации курсового проекта были изучены механизмы защиты данных и требования к техническому обеспечению. MS SQL Server была выбрана в качестве СУБД для создания инфологической и даталогической модели базы данных. Были разработаны основные запросы к базе данных. Приобретенные устойчивые навыки проектирования баз данных и разработки запросов могут быть применены при создании более значимых коммерческих проектов. Инструкция по использованию базы данных была изучена в процессе выполнения курсового проекта.Список использованных источниковKozhemyakinaO.YU. Conceptual design of the software system for automated complex analysis of poetic texts/Computational Technologies. – 2022. – №. 2. – С. 122-137.АбдулуевР.Н. Машинное обучение в среде субдmssqlserver / Р. Н. Абдулаев, А. А. Крумкаченко – Наукаиобразование, 2019. – №. 4. – С. 207.ТалановВ.М. Пример создания базы данных в системе управления базами данных mysql/ В. М. Таланов, М. В. Румков, Г. В. Ерофеев – XLVIОгарёвские Чтения, 2019. –С. 219-2024.СтружинН.П. Базы данных: проектирование / Н. П. Стружин, В. В. Годин – 2017.ОсиповД.Л. Технологии проектирования базы данных / М.: ДМК Пресс – 2019. – 498 с.
1. KozhemyakinaO.YU. Conceptual design of the software system for automated complex analysis of poetic texts/Computational Technologies. – 2022. – №. 2. – С. 122-137.
2. АбдулуевР.Н. Машинное обучение в среде субдmssqlserver / Р. Н. Абдулаев, А. А. Крумкаченко – Наукаиобразование, 2019. – №. 4. – С. 207.
3. ТалановВ.М. Пример создания базы данных в системе управления базами данных mysql/ В. М. Таланов, М. В. Румков, Г. В. Ерофеев – XLVIОгарёвские Чтения, 2019. –С. 219-2024.
4. СтружинН.П. Базы данных: проектирование / Н. П. Стружин, В. В. Годин – 2017.
5. ОсиповД.Л. Технологии проектирования базы данных / М.: ДМК Пресс – 2019. – 498 с.