Проектирования и разработка базы данных «Центр социальных исследований» с применением MS SQLSERVER 2012
Автор: Дима Киселёв • Январь 21, 2018 • Курсовая работа • 466 Слов (2 Страниц) • 802 Просмотры
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«ИВАНОВСКИЙ ГОСУДАРСТВЕННЫЙ ЭНЕРГЕТИЧЕСКИЙ УНИВЕРСИТЕТ
имени В.И. Ленина»
Факультет информатики и вычислительной техники
КУРСОВАЯ РАБОТА
на тему:
ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА БАЗЫ ДАННЫХ
«Центр социальных исследований»
с применением MS SQLSERVER 2012
Выполнил: | Шуйкин С. А. гр. 2-48 |
Проверил: | ст. преп. Булатова Е.Е. |
Иваново, 2015
Анализ предметной области
- Описание предметной области
Центр социальных исследований создает проекты в соответствии с требованиями заказчиков. Проекты состоят из исследований 3х типов (контент-анализ, наблюдение, опрос) в рамках одного проекта могут быть несколько исследований в том числе одного типа. В рамках исследований заполняются определенные бланки, сформированные сотрудниками центра, на основе данных производится анализ.
- Таблица ролей и функций
Роль | Функции |
Руководитель центра | Создание проектов, управление сотрудниками, назначение сотрудников на исследование |
Руководители исследований | Проведение исследований, заполнение бланков |
Респондент | Учавствует в опросе |
Концептуальная модель базы данных
[pic 1]
Логическая модель базы данных
[pic 2]
Физическая модель базы данных
[pic 3]
Диаграмма базы данных в среде Microsoft SQL SERVER
[pic 4]
Описание ограничений
- Значения по умолчанию (DEFAULT)
- В таблице опроса в поле «статус» по умолчанию стоит значение 1
ALTER TABLE [dbo].[survey] ADD CONSTRAINT [DF_survey_status] DEFAULT ((1)) FOR [status]
- В таблице «респонденты» в поле рейтинг стоит 400
ALTER TABLE [dbo].[respondent] ADD CONSTRAINT [DF_respondent_raiting] DEFAULT ((400)) FOR [raiting]
- Ограничения на вводимые данные (CHECK)
- ФИО должно быть записано в виде: [FIO] like '% % %'
- Проверка даты и времени начала и конца наблюдения (время конца наблюдения не может быть меньше времени начала) CHECK (([w_time_e]>[w_time_b]))
- Правила удаления
- При удалении проекта должны удаляться все таблицы исследований связаные с ним (каскадное удаление на связи «FK_content_analitic_project», «FK_survey_project», «FK_watch_project»)
- При удалении опроса зависящим от него вопросам присваивается NULL
Запросы INSERT, UPDATE, DELETE
INSERT INTO project (worker_id, name, target, date_b)
VALUES ('1','Название','Цель',getdate());
INSERT INTO dolj (name)
VALUES ('Менеджер');
INSERT INTO worker (fio, dol_id, date_start)
VALUES ('Куликов Василий Алексеевич', '4', getdate());
UPDATE project
SET name = 'Новое название',
target = 'Новая цель'
WHERE project_id = 1;
UPDATE watch
SET name = name + ' не назначен руководитель!'
WHERE worker_id = NULL;
UPDATE worker
SET dolj_id = 1
WHERE worker_id = 3;
DELETE FROM project
...