
Управление данными УД / Управление данными_ИСТ-11-12-15 / ИСТ-12 / 2-Создание БД Проекты / ЛАБ2 Соколов Даниил ИСТ-12
.docxСанкт-Петербургский Государственный Университет Телекоммуникаций имени проф. М.А. Бонч-Бруевича
Факультет Информационных систем и технологий Кафедра Информационных и управляющих систем
Отчет к лабораторной работе №3
«Построение базы данных. Проекты»
По дисциплине: Управление данными
Выполнил: Соколов Д.С.
Группа ИСТ-12
Преподаватель: Сабинин О.Ю.
Санкт-Петербург
2014
Задание:
1.Создать базу данных для учета сотрудников и выполняемых ими проектов.
Требования к модели:
-
Проект может выполнять один или несколько сотрудников;
-
Сотрудники могут участвовать в одном или нескольких проектах;
-
У сотрудников может быть один начальник и один или несколько подчиненных;
-
Сотрудники закреплены за отделами;
-
В отделе может работать один или несколько сотрудников:
-
Сотрудник или закреплен за одним отделом или не закреплен ни за одним отделом.
База данных должна содержать следующую информацию:
- о сотрудниках: Фамилию, имя, отчество, должность, зарплату, отдел, начальник;
- об отделах: Название отдела, телефон;
- о проектах: Название проекта.
2. Предусмотреть значения по умолчанию для столбца Зарплата (0), Телефон (‘111-11-11’)и проверку вводимых пользователем значений - Зарплата>= 0 и Зарплата<=60000;
3. Значения в столбцах Название отдела и Название проекта должны быть уникальными.
4. Внести в таблицы базы данных по 5 записей. Проверить работу связей, ограничений и значений по умолчанию.
5. Оформить отчет по работе
Ход работы:
-
Создадим таблицу «сотрудники» (Рис. 1) и установим значение по умолчанию в поле «ЗАРПЛАТА» равное нулю (Рис. 2).
Рис. 1 – Создание таблицы «сотрудники»
Рис. 2 – Установка значения по умолчанию для поля «ЗАРПЛАТА»
Добавим ограничение для поля «ЗАРПЛАТА» >=0 & <=60000 (Рис.3), а также заполним таблицу для пяти сотрудников (Рис.4).
Рис. 3 – Установка ограничений для поля «ЗАРПЛАТА»
Рис. 4 – Заполнение таблицы «сотрудники»
-
Создадим таблицу «отделы» и добавим все необходимые поля (Рис.5). Значение по умолчанию для «ТЕЛЕФОН» ставим равное 111-11-11 (Рис.6)
Рис. 5 – Создание таблицы «отделы»
Рис. 6 – Установка значения по умолчанию для поля «ТЕЛЕФОН»
Обеспечим уникальность для столбца «НАЗВАНИЕ_ОТДЕЛА» (Рис.7), а также заполним таблицу «отделы» информацией о пяти отделах (Рис.8).
Рис. 7 – Установка уникальных значений для поля «НАЗВАНИЕ_ОТДЕЛА»
Рис. 8 – Заполнение таблицы «отделы»
-
Создадим таблицу «проект» и добавим все необходимые поля таблицы по заданию (Рис.9), Обеспечим уникальность для столбца «НАЗВАНИЕ_ПРОЕКТА» (Рис.8) и заполним таблицу «проект» информацией о пяти проектах (Рис.11).
Рис.9– Создание таблицы «проекты»
Рис.10– Установка уникальных значений для поля «НАЗВАНИЕ_ПРОЕКТА»
Рис.11– Заполнение таблицы «проекты»
-
Связь «проекты» с «сотрудники» многие ко многим, которая не реализуется. Для этого нужно ввести ассоциативную таблицу «участн_проекта». Добавим в неё два поля «НОМЕР_СТРУДНИКА» и «НОМЕР ПРОЕКТА» и заполним 5 строк (Рис.12 и Рис.13)
Рис.12 – Создание таблицы «участн_проекта»
Рис.13 – Заполение таблицы «участн_проекта»
-
Теперь свяжем все таблицы:
«СОТРУДНИКИ»-«ТАБЛ_НОМЕР» связан с «СОТРУДНИКИ»-«НАЧАЛЬНИК» унарной связью, то есть таблица связана сама с собой (Рис.14)
Рисунок 14 - Связь «НАЧАЛЬНИК» - «ТАБЛ_НОМЕР»
«СОТРУДНИКИ»-«ОТДЕЛ» связан с «ОТДЕЛ»-«НОМЕР_ОТДЕЛА» (Рис.15)
Рисунок 15 - Связь «ОТДЕЛ» - «НОМЕР_ОТДЕЛА»
«УЧАСТ_ПРОЕКТА»-«НОМЕР_ПРОЕКТА» связан с «ПРОЕКТЫ»-«НОМЕР_ПРОЕКТА» (Рис.16)
Рисунок 16 - Связь «НОМЕР_ПРОЕКТА» - «НОМЕР_ПРОЕКТА»
«УЧАСТН_ПРОЕКТА»-«НОМЕР_СОТРУДНИКА» связан с «СОТРУДНИКИ»-«НОМЕР_СОТРУДНИКА» (Рис.17)
Рисунок 17 - Связь «НОМЕР_СОТРУДНИКА» - «ТАБЛ_НОМЕР»
-
Построим в Data Modeler реляционную модель двух таблиц (Рис.18)
Рисунок 18 - Реляционная модель таблиц в Data Modeler
-
Проверим работу связей и значений по умолчанию.
Проверка на уникальность значений столбцов. Выдается ошибка при попытке написать уже имеющееся значение в столбце «НАЗВАНИЕ_ОТДЕЛА» (Рис.19) и «НАЗВАНИЕ_ПРОЕКТА» (Рис.20)
Рисунок 19 – Проверка на уникальность столбца «НАЗВАНИЕ_ОТДЕЛА», «НОМЕР_ПРОЕКТА»
Рисунок 20 - Проверка на уникальность столбца «НАЗВАНИЕ_ПРОЕКТА», «НОМЕР_ПРОЕКТА»
Проверка на значения по умолчанию в столбцах «ЗАРПЛАТА» (Рис.21) и «ТЕЛЕФОН» (Рис.22)
Рисунок 21 – При отсутствии данных в поле «ЗАРПЛАТА»
Рисунок 22 – При отсутствии данных в поле «ТЕЛЕФОН»
Вывод: В ходе данной лабораторной работы были созданы четыре таблицы «СОТРУДНИКи», «ПРОЕКТЫ», «ОТДЕЛЫ», «УЧАСТН_ПРОЕКТА» и рассмотрены различные виды связи: унарная, многие-к-одному и многие-ко-многим. Реализация последней в СУБД невозможна, поэтому была создана ассоциативная таблица «УЧАСТНИКИ_ПРОЕКТА».