Разделы презентаций


Курсовой проект Дисциплина СУБД

Содержание

ЦельЦелью данного курсового проекта является построение физической модели базы данных для автоматизированной системы.

Слайды и текст этой презентации

Слайд 1Курсовой проект Дисциплина «СУБД»
Тема: «Разработка базы данных для системы «Учесть обслуживание,

технический осмотр и ремонт лифтов в домах города Сыктывкар компанией

ООО «ОТИС-Лайн»»»

Вьюгин Антон ИСТ-09

Курсовой проект Дисциплина «СУБД»Тема: «Разработка базы данных для системы «Учесть обслуживание, технический осмотр и ремонт лифтов в

Слайд 2Цель
Целью данного курсового проекта является построение физической модели базы данных

для автоматизированной системы.

ЦельЦелью данного курсового проекта является построение физической модели базы данных для автоматизированной системы.

Слайд 3Задачи
Переход от логической модели базы данных к физической.
Создание выходных

форм, а именно хранимых процедур и функций
Организация обеспечения безопасности базы

данных.
Оптимизация базы данных за счет индексов и анализа запросов.
Тестирование базы данных.

ЗадачиПереход от логической модели базы данных к физической. Создание выходных форм, а именно хранимых процедур и функцийОрганизация

Слайд 4Функции системы
Управление данными (добавление/правка данных):
О вызовах на устранение неисправностей

в работе лифтов и ЛДСС;
О технических осмотрах лифтов и

ЛДСС;
Об аварийных обслуживаниях лифтов и ЛДСС;
О личных данных электромехаников

Формирование необходимых форм отчетов:
Личная карточка каждого лифта со всей историей.
Отчет о работе аварийных электромехаников.
Отчет о работе основных электромехаников
Полный отчет работы организации

Функции системыУправление данными (добавление/правка данных): О вызовах на устранение неисправностей в работе лифтов и ЛДСС; О технических

Слайд 5Создание таблиц
Были созданы следующие таблицы:

Street (Улица) - справочник
Electrician (Электромеханик) -

справочник
TypeOfApplication (Вид заявки) - справочник
Defect (Неисправность) - справочник
Elevators (Лифт)
Request (Заявка)
Orders

(Наряд)
Defects (Неисправности)
Создание таблицБыли созданы следующие таблицы:Street (Улица) - справочникElectrician (Электромеханик) - справочникTypeOfApplication (Вид заявки) - справочникDefect (Неисправность) -

Слайд 6Именование объектов
Таблицы базы данных именуются в соответствии с их

содержимым и на английском языке, т.к. он является интернациональным. Например

таблица хранящая в себе данные о лифтах (личный номер, дом, подъезд и т.п.) называется Elevator.

Именование процедур и функций осуществляется по следующему шаблону:
Добавление <имя таблицы>INSERT,
Удаление - < имя таблицы >Delete,
Обновление - < имя таблицы >Update,
Отчетные формы - print<имя объекта или действия>

Именование объектов Таблицы базы данных именуются в соответствии с их содержимым и на английском языке, т.к. он

Слайд 7Таблица Street
CREATE TABLE Street
(IDStreet INT IDENTITY NOT NULL,
NameStreet VARCHAR(40)

NOT NULL );
ALTER TABLE Street
WITH CHECK
ADD CONSTRAINT

IDStreetPrimary PRIMARY KEY (IDStreet),
CONSTRAINT NameStreetUnique UNIQUE (NameStreet);

Таблица StreetCREATE TABLE Street 		(IDStreet INT IDENTITY NOT NULL,		NameStreet VARCHAR(40) NOT NULL );ALTER TABLE Street	WITH CHECK

Слайд 8Логическая модель
См. Приложение 1

Логическая модельСм. Приложение 1

Слайд 9Физическая модель
См. Приложение 2

Физическая модельСм. Приложение 2

Слайд 10Процедурная целостность
Процедуры добавления данных:
PStreetINSERT
PTypeOfApplicationINSERT
PElectricianINSERT
PDefectINSERT
PElevatorsINSERT
PRequestINSERT
POrdersINSERT
PDefectsINSERT

Процедуры обновления данных:
UpdateStreet
UpdateElectrician
UpdateDefect
UpdateElevators
UpdateRequest
UpdateOrders
UpdateDefects

Процедуры удаления данных:
DeleteStreet
DeleteTypeOfApplication
DeleteElectrician
DeleteDefect
DeleteElevators
DeleteRequest
DeleteOrders
DeleteDefects

Процедурная целостностьПроцедуры добавления данных:PStreetINSERTPTypeOfApplicationINSERTPElectricianINSERTPDefectINSERTPElevatorsINSERTPRequestINSERTPOrdersINSERTPDefectsINSERTПроцедуры обновления данных:UpdateStreetUpdateElectricianUpdateDefectUpdateElevatorsUpdateRequestUpdateOrdersUpdateDefectsПроцедуры удаления данных:DeleteStreetDeleteTypeOfApplicationDeleteElectricianDeleteDefectDeleteElevatorsDeleteRequestDeleteOrdersDeleteDefects

Слайд 11Пример
Ввод данных в таблицу Street:
CREATE PROC PStreetINSERT
@NameStreet VARCHAR(40)
AS
INSERT INTO

Street
(NameStreet)
VALUES
(@NameStreet)

Удаление данных из таблицы TypeOfApplication:
CREATE PROC DeleteTypeOfApplication
(@IDTypeOfApplication INT)
AS
DELETE FROM

TypeOfApplication
WHERE IDTypeOfApplication = @ IDTypeOfApplication

ПримерВвод данных в таблицу Street:CREATE PROC PStreetINSERT	@NameStreet VARCHAR(40) AS	INSERT INTO Street	(NameStreet)	VALUES	(@NameStreet)Удаление данных из таблицы TypeOfApplication:CREATE PROC DeleteTypeOfApplication

Слайд 12Транзакции
Транзакция – неделимая с точки зрения воздействия на БД последовательность

операторов манипулирования данными, приводящая к одному из двух возможных результатов:

либо последовательность выполняется, если все операторы правильные, либо вся транзакция откатывается, если хотя бы один оператор не может быть успешно выполнен.

В данном курсовом проекте транзакции не использовались.

ТранзакцииТранзакция – неделимая с точки зрения воздействия на БД последовательность операторов манипулирования данными, приводящая к одному из

Слайд 13Триггер
Триггер – это откомпилированная SQL-процедура, исполнение которой обусловлено наступлением определенных

событий внутри реляционной базы данных.
Был создан триггер, запрещающий исправлять

разряд электромеханика в отношении Electrician на менее низкий

ALTER TRIGGER LowClass
ON Electrician FOR UPDATE
AS
IF EXISTS
(SELECT 'TRUE'
FROM inserted I
LEFT JOIN deleted D
ON D.IDElectrician=I.IDElectrician
WHERE I.Class BEGIN
RAISERROR (' Нельзя понижать разряд электромеханика!!!',16,1)
ROLLBACK TRAN
END

ТриггерТриггер – это откомпилированная SQL-процедура, исполнение которой обусловлено наступлением определенных событий внутри реляционной базы данных. Был создан

Слайд 14Выходные формы
Представления:
Printall -Отчет работы всех подразделений сортировка по улицам
print1El -вывод

всех поломанных лифтов с высокой степенью

Процедуры и функции:
PrintPodr -функция вывода

работы подразделения с определенной даты
PrintElevator -Личная карточка лифта со всей историей

Выходные формыПредставления:Printall -Отчет работы всех подразделений сортировка по улицамprint1El -вывод всех поломанных лифтов с высокой степеньюПроцедуры и

Слайд 15Пример представления
Полный отчет работы организации:
CREATE VIEW printall
AS
SELECT NameStreet [Улица],

PersonalNumber [№ лифта],
FIO [ФИО],

TypeOfApp [Вид заявки],
TypeOfDefect [Вид неисправности],
BreakDescription [Описание поломки],
BreakLevel [степень],
BreakTime [время поломки]
FROM Street ST INNER JOIN Elevator EL
ON ST.IDStreet=EL.IDStreet
INNER JOIN Request RE
ON EL.IDElevator=RE.IDElevator
INNER JOIN TypeOfApplication TA
ON RE.IDTypeOfApplication=TA.IDTypeOfApplication
INNER JOIN Orders ORD
ON RE.IDRequest=ORD.IDRequest
INNER JOIN Electrician ELC
ON ORD.IDElectrician=ELC.IDElectrician
INNER JOIN Defects DFS
ON ORD.IDOrders=DFS.IDOrders
INNER JOIN Defect DF
ON DFS.IDDefect=Df.IDDefect
Пример представленияПолный отчет работы организации:CREATE VIEW printallASSELECT NameStreet [Улица], 	  PersonalNumber [№ лифта], 	  FIO

Слайд 16Обеспечение безопасности
Было создано две роли:
Dispatchers (Диспетчеры)
Administrators (Администраторы)
На каждую роль были

созданы пользователи:
Dispatcher1 (Диспетчер1)
Dispatcher2 (Диспетчер2)
Dispatcher3 (Диспетчер3)
Administrator1 (Администратор1)
Administrator2 (Администратор2)
Ролям были выделены следующие

права доступа:
Обеспечение безопасностиБыло создано две роли:Dispatchers (Диспетчеры)Administrators (Администраторы)На каждую роль были созданы пользователи:Dispatcher1 (Диспетчер1)Dispatcher2 (Диспетчер2)Dispatcher3 (Диспетчер3)Administrator1 (Администратор1)Administrator2 (Администратор2)Ролям

Слайд 17Обеспечение безопасности
--роль диспетчеры
CREATE ROLE Dispatchers
 
--роль Администраторы
CREATE ROLE Administrators

-- пользователь –

Диспетчер1
USE Elevator
CREATE USER Dispatcher1
WITHOUT LOGIN

……………………
-- пользователь – Администратор1
USE Elevator
CREATE USER

Administrator1
WITHOUT LOGIN

……………………….

--добавление членов в роль Dispatchers
sp_addrolemember Dispatchers,
Dispatcher1
sp_addrolemember Dispatchers,
Dispatcher2
sp_addrolemember Dispatchers,
Dispatcher3
 
--добавление членов в роль Administrators
sp_addrolemember Administrators,
Administrator1
sp_addrolemember Administrators,
Administrator2

Обеспечение безопасности--роль диспетчерыCREATE ROLE Dispatchers --роль АдминистраторыCREATE ROLE Administrators-- пользователь – Диспетчер1USE ElevatorCREATE USER Dispatcher1WITHOUT LOGIN……………………-- пользователь –

Слайд 18Оптимизация
Индекс – особый объект БД, создаваемый с целью увеличения

производительности поиска данных.
Помимо кластеризованных, в данном курсовом проекте

были использованы некластеризованные индексы, которые накладывались на внешние ключи, и индексы с ограничением на уникальность.

Примеры индексов:
--TypeOfApplication
CREATE UNIQUE INDEX UniqueTypeOfApplicationIndex
ON TypeOfApplication (TypeOfApp ASC)
--Defect
CREATE UNIQUE INDEX UniqueDefectIndex
ON Defect (TypeOfDefect ASC)
--Elevators
CREATE NONCLUSTERED INDEX ElevatortsIDStreet
ON Elevators (IDStreet ASC)
CREATE UNIQUE INDEX UniqueElevatorsIndex
ON Elevators (Building, Door, PersonalNumber ASC)

Оптимизация Индекс – особый объект БД, создаваемый с целью увеличения производительности поиска данных. Помимо кластеризованных, в данном

Слайд 19Тестирование
Вывод отчетов

Вывод работы аварийных электромехаников
SELECT * FROM
PrintPodr ('05.07.2011 012:00:00:00',‘Аварийный

электромеханик')

 
 
Перечень адресов и регистрационных номеров лифтов и ЛДСС, аварийное обслуживание

которых осуществляется данной ЛАС (ДПАС):




SELECT * FROM PrintElevator (6)
 

ТестированиеВывод отчетовВывод работы аварийных электромеханиковSELECT * FROM PrintPodr ('05.07.2011 012:00:00:00',‘Аварийный электромеханик')  Перечень адресов и регистрационных номеров лифтов и

Слайд 20Тестирование
Вывод отчетов
SELECT * FROM
printall
 
 



Наряд на устранение неисправностей в работе

лифтов и ЛДСС:











ТестированиеВывод отчетовSELECT * FROM printall  Наряд на устранение неисправностей в работе лифтов и ЛДСС:

Слайд 21Заключение
Создана физическая модель базы данных Elevator из сущностей Street, Electrician,

TypeOfApplication, Defect, Elevators, Request, Orders, Defects.
Обеспечена целостность БД с

использованием декларативных (ограничения PRIMARY KEY, FOREIGN KEY, UNIQUE и CHECK) и процедурных методов (PStreetINSERT, UpdateStreet, TRIGGER LowClass и др.)
Созданы хранимые процедуры и функции для вывода отчетных форм (Printall, print1El, PrintPodr, PrintElevator)
Созданы роли (Dispatcher, Administrator) и пользователи для обеспечения безопасности базы данных.
Оптимизирована база данных за счет индексов.
Произведено тестирование базы данных.

ЗаключениеСоздана физическая модель базы данных Elevator из сущностей Street, Electrician, TypeOfApplication, Defect, Elevators, Request, Orders, Defects. Обеспечена

Слайд 22Спасибо за внимание

Спасибо за внимание

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика