Разработка базы данных "Расписание занятий" с использованием MS SQL SERVER 2008 R2
Описание предметной области проектирования баз данных "Расписание занятий". Диаграмма вариантов использования. Концептуальная модель предметной области, ограничения. Запросы на модификацию данных. Хранимые процедуры. Триггеры, клиентское приложение.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 27.09.2017 |
Размер файла | 512,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Разработка базы данных «Расписание занятий» с использованием MS SQL SERVER 2008 R2
1. Описание предметной области
база данных клиентский приложение
Обучение студентов регламентируется расписанием занятий, которое составляется на семестр для подгруппы студентов.
Расписание содержит сведения о номере и дне недели, номере пары, номере аудитории, преподаваемой дисциплине, виде занятия (семинар, лекция, лабораторная работа) и преподавателе, который будет проводить занятие.
2. Проектирование
2.1 Диаграмма вариантов использования, UML
На диаграмме вариантов использования (Рис.1) изображены 4 актёра: администратор, студент, преподаватель, вахтёр.
Администратор составляет расписание. Студент и преподаватель просматривают расписание, находя интересующую их информацию, в качестве дополнительных функций, для удобства использования расписания, его можно скачать или распечатать. Вахтёр выдаёт ключи преподавателям от кабинета для проведения занятий, предварительно просмотрев расписание, чтобы проверить будет ли в этом кабинете идти занятие. Или выдать ключи для уборки, посмотрев в расписание свободен ли кабинет.
Рис.1.Диаграмма вариантов использования
2.2 Концептуальная модель предметной области, UML
Рис.2.Концептуальная модель предметной области
2.3 Логическая модель базы данных, IDEF1x
Рис.3.Логическая модель базы данных
2.4 Физическая модель базы данных, IDEF1x
Рис.4. Физическая модель базы данных
2.5 Диаграмма базы данных из MS SQL Server
Рис.5. Диаграмма базы данных из MS SQL Server
3. Описание ограничений
3.1 Значения по умолчанию
Начальное значение строки PotokID начнётся со значения 1 (Рис.6.)
Рис.6. Значение по умолчанию 1
Начальное значение строки Podgrupa начнётся со значения 1 (Рис.7.) .
Рис.7. Значение по умолчанию 2
3.2 Ограничения на вводимые данные
В таблице Prepodavatel строке FIO стоит ограничение на вводимые данные FIO like `% %.%.' (Рис.8). Для того чтобы в строку вводились данные следующего вида: Чахунов Е.И, Коровин Д.И, Романова О.А и т.д.
Рис.8. Ограничение на вводимые данные 1
В таблице NomerPari строке NomerPariID стоит ограничение на вводимые данные NomerPariID between 1 and 8 (Рис.9). Для того чтобы не вводить больше пар чем может пройти за один учебный день.
Рис.9. Ограничение на вводимые данные 2
3.3 Правила удаления
Если удалить кафедру, то на её месте будет значение NULL.
Рис.10. Правило удаления 1
Если аудитория вдруг стала не пригодной для проведения занятий (ремонт, сделали кладовку, отдали под другие нужды) она удаляется и на её месте появляется значение NULL.
Рис.11. Правило удаления 2
4. Запросы на модификацию данных (Insert, Update, Delete)
4.1 Insert
INSERT INTO Prepodavatel (PrepodavatelID, FIO, Kaphedra)VALUES (2, 'Киселёв В. Ю.','Математики') |
|
INSERT INTO Prepodavatel (PrepodavatelID, FIO, Kaphedra)VALUES (4, 'Романова О.А.', DEFAULT) |
|
INSERT INTO Prepodavatel (PrepodavatelID)VALUES (1) |
4.3 Update
UPDATE PrepodavatelSET FIO = 'Чахунов Е. И.''WHERE PrepodavatelID = 2 |
|
UPDATE PrepodavatelSET PrepodavatelID = 9, FIO = 'Коровин. Д. И.', Kaphedra = 'Математики'WHERE (PrepodavatelID = 3) |
|
UPDATE PrepodavatelSET PrepodavatelID = 11, FIO = 'Левенец И. А.', Kaphedra = 'ПОКС'WHERE (PrepodavatelID = 4) OR (Kaphedra = NULL) |
4.4 Delete
DELETE FROM PrepodavatelWHERE (PrepodavatelID IN (4)) |
|
DELETE FROM PrepodavatelWHERE (KaphedraID IS NULL) |
|
DELETE FROM Prepodavatel |
5. Запросы на выборку данных
Рис.12. Select №1 (Выбор данных о всех преподавателях)
Рис.13. Select №2
Рис.14. Select №3
Рис.15. Select №4
Рис.16. Select №5
Рис.17. Select №6
Рис.18. Select №7
Рис.19. Select №8
Рис.20. Select №9
Рис.21. Select №10
6. Хранимые процедуры
1. Процедура выводит все проводимые занятия
CREATE PROCEDURE vse_zanytiya
AS
select Vremya, DenNedeli, Nazvanie, TipZanytiya, Gruppa
from Raspisanie inner join NomerPari on NomerPari=NomerPariID
join Disciplina on Disciplina=DisciplinaID
join Potok on Potok=PotokID
join Nedelya on Nedelya=NedelyaID
Вызов
EXECUTE vse_zanytiya
Рис.22. Процедура выводит все проводимые занятия
2. Процедура добавляет новую дисциплину (ID, Название, Тип занятия).
CREATE PROC dobav
@disciplina_id INT,
@nazvanie varchar(60),
@tip_zanitiya varchar(30)
AS
INSERT INTO Disciplina(DisciplinaID, Nazvanie, TipZanytiya)
VALUES (@disciplina_id, @nazvanie, @tip_zanitiya)
Вызов
EXECUTE dobav 21, 'Базы данных', Лекция
Рис.23. Процедура добавляет новую дисциплину
7. Триггеры
1. Триггер проверяет, допустимость номера кафедры.
CREATE TRIGGER tr
ON Prepodavatel
INSTEAD OF INSERT
AS
IF EXISTS (SELECT *
FROM INSERTED
WHERE KaphedraID > 20)
BEGIN
RAISERROR ('Недопустимое значение номера кафедры', 16, 1)
ROLLBACK TRAN
END
ELSE
INSERT INTO Prepodavatel (PrepodavatelID, FIO, KaphedraID)
SELECT PrepodavatelID, FIO, KaphedraID
FROM INSERTED
2. Триггер выводит сообщение об ошибке если поле равно NULL.
CREATE TRIGGER prepod
ON Prepodavatel
FOR INSERT
AS
IF EXISTS (SELECT *
FROM inserted
WHERE FIO is NULL)
BEGIN
RAISERROR ('ОШИБКА, вы должны заполнить поле FIO', 16, 1)
ROLLBACK TRANSACTION
END
8. Клиентское приложение
1. Вывод всех преподавателей.
Рис.24. Преподаватели
2. Вывод всех пар.
Рис.25. Пары
Размещено на Allbest.ru
...Подобные документы
Ограничения, присутствующие в предметной области. Проектирование инфологической модели данных. Описание основных сущностей и их атрибутов. Логический и физический уровни модели данных. Реализация базы данных: представления, триггеры, хранимые процедуры.
курсовая работа [1,7 M], добавлен 10.02.2013Выбор методологии проектирования и системы управления базами данных. Описание предметной области и проектирование физической структуры базы данных. Реализация проекта в MS SQL Server 2008. Построение инфологической модели. Ограничения целостности связи.
курсовая работа [679,2 K], добавлен 22.01.2013Определение понятия и общее описание базы данных как упорядоченной информационной системы на носителе информации. Описание предметной области и разработка приложения базы данных, содержащей информацию о расписании занятий, для преподавателей кафедры.
курсовая работа [1,3 M], добавлен 08.08.2012Информационно-логическая модель предметной области по нотациям Ричарда Баркера. Даталогическая модель реляционной базы данных в виде диаграммы схемы отношений. Приложение интерфейса для базы данных на языке программирования С# в среде Visual Studio.
курсовая работа [3,6 M], добавлен 23.12.2014Построение автоматизированной системы контроля произведенных работ в строительной компании. Описание предметной области; создание базы данных: концептуальная и реляционная модель; структура таблиц; встроенные функции, хранимые процедуры, триггеры.
курсовая работа [1,6 M], добавлен 22.08.2012Этап концептуального проектирования базы данных: описание и характеристика предметной области, ограничения и допуения, модель "сущность-связь" (ER-диаграмма). Выбор модели данных. Требования к интерфейсу пользователя, создание запросов в среде Delphi.
курсовая работа [2,2 M], добавлен 25.05.2010Анализ предметной области и среда функционирования информационной системы "Туристическое агентство". Разработка и сопровождение баз данных средствами Enterprise Manager в среде SQL Server 2008. Принципы создания таблиц, запросы, хранимые процедуры.
курсовая работа [2,1 M], добавлен 11.12.2013Разработка информационной системы, выбор языка программирования, физическое описание базы данных, выбор типа и описание таблиц базы данных. Техническое проектирование, ограничения и значения по умолчанию, представления, хранимые процедуры и триггеры.
курсовая работа [519,8 K], добавлен 25.05.2010Описание предметной области и соотношения между объектами. Этапы проектирования базы данных, ее инфологическая, концептуальная и физическая модели. Использование режима "Конструктор" при создании таблиц, разработка форм, запросов и отчетов в MS Access.
курсовая работа [2,5 M], добавлен 07.11.2012Разработка технического задания и проекта информационной системы "Расписание занятий в вузе". Понятие, определения и сокращения. Характеристика объектов автоматизации. Даталогическая модель базы данных. Создание таблиц и построение схемы данных в БД.
курсовая работа [888,4 K], добавлен 09.02.2017Разработка базы данных для предметной области "Подразделения предприятия – Рабочие помещения". Описание используемых данных, предметной области и результатной информации. Создание запросов, форм и отчетов в базе данных. Описание построения диаграмм.
курсовая работа [5,6 M], добавлен 24.07.2014Цель инфологического моделирования предметной области. Источники данных, базы данных и система управления, разработка модели. Принципы проектирования базы данных, концептуальная, логическая, материальная разработка. Типы сущностей, атрибутов и связей.
курсовая работа [188,6 K], добавлен 15.07.2012Создание базы данных для информационной системы "Грузоперевозки". Анализ предметной области, разработка концептуальной и логической модели базы данных, с использованием средства MS Micrоsоft SQL Server 2005, реализация физического проектирования базы.
курсовая работа [1,3 M], добавлен 01.07.2011Анализ предметной области - магазин "Канцелярские товары". Проектирование и реализация базы данных в MS SQL Server. Перечень хранимой информации: таблицы, поля, типы. Моделирование предметной области. Выделение сущностей, атрибутов, ключей, связей.
курсовая работа [2,2 M], добавлен 05.02.2015Анализ предметной области с использованием моделей методологии ARIS и разработка ER-диаграммы. Описание входной и выходной информации для проектирования реляционной базы данных. Разработка управляющих запросов и связей между ними с помощью языка SQL.
курсовая работа [975,2 K], добавлен 30.01.2014Базы данных - важнейшая составная часть информационных систем. Проектирование базы данных на примере предметной области "Оргтехника". Сбор информации о предметной области. Построение информационно-логической модели данных. Разработка логической структуры.
курсовая работа [318,6 K], добавлен 24.12.2014Определение предметной области базы данных ("Сеть ресторанов"), виды ее моделирования. Первоначальный набор сущностей и атрибутов предметной области. Процесс смыслового наполнения базы данных. Атрибуты в концептуальной модели. Характеристика видов связей.
контрольная работа [510,9 K], добавлен 03.12.2014Разработка концептуальной модели базы данных "Чемпионат авто": описание предметной области, каталог задач, описание таблиц, схема данных, ER-диаграмма. Проектирование реляционной модели "Спортивный комплекс". Реализация и результат работы базы данных.
курсовая работа [3,7 M], добавлен 14.06.2011Системный анализ и краткая характеристика предметной области. Функции для работы с буферизованной таблицей. Описание предметной области и инфологическое моделирование. Модель "сущность-связь". Проектирование баз данных на основе принципов нормализации.
курсовая работа [112,9 K], добавлен 27.02.2009Описание предметной области, определение функциональных требований к системе и построение диаграммы потока данных. Построение модели "сущность-связь", описание сущностей и атрибутов модели. Построение реляционной базы данных и описание ее таблицы.
курсовая работа [624,5 K], добавлен 30.05.2019