лб3
.docxФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Кафедра безопасности информационных систем
ОТЧЁТ
по лабораторной работе на тему:
«Создание базы данных в Oracle SQL Developer»
по дисциплине
«Управление данными»
Выполнила студентка группы ИБ-01вп,
Санкт-Петербург, 2022 г.
Цель работы
Научиться создавать базу данных в Oracle SQL Developer – интегрированной среде разработки на языках SQL & PL/SQL.
Задачи
Создать базу данных для учета сотрудников и выполняемых ими проектов. Требования к модели:
Проект может выполнять один или несколько сотрудников;
Сотрудники могут участвовать в одном или нескольких проектах;
У сотрудников, может быть, один начальник и один или несколько подчиненных;
Сотрудники закреплены за отделами;
В отделе может работать один или несколько сотрудников:
Сотрудник или закреплен за одним отделом или не закреплен ни за одним отделом.
База данных должна содержать следующую информацию:
о сотрудниках: Фамилию, имя, отчество, должность, зарплату, отдел, начальник;
об отделах: Название отдела, телефон;
о проектах: Название проекта.
Предусмотреть значения по умолчанию для столбца Зарплата (0), Телефон (‘111-11-11’) и проверку вводимых пользователем значений – Зарплата >= 0 и Зарплата <= 60000;
Значения в столбцах Название отдела и Название проекта должны быть уникальными.
Внести в таблицы базы данных по 5 записей. Проверить работу связей, ограничений и значений по умолчанию.
Ход выполнения работы
Создать таблицу «Сотрудники» в соответствии с заданием.
Создаю соединение ProjectDB с учетной записью Sheveleva
Создаю там таблицу Сотрудники, в которой будут столбцы employee_id (первичный ключ), name (имя), middle_name (отчество), last_name (фамилия), job_id (должность), salary (зарплата), manager_id (начальник), department_id (департамент).
Ввести необходимые ограничения пользовательских значений.
Устанавливаю значение по умолчанию, если не введено, ноль.
Ограничиваю введенные значения для зарплаты от 0 до 60000.
Создать таблицу «Отделы» в соответствии с заданием.
Создаю таблицу отделы с полями в department_id, department_desc, phone, manager_id.
Установить необходимое значение по умолчанию в столбце «Телефон»
Устанавливаю значение по умолчанию для телефона 111-11-11
Создать таблицу «Проекты» в соответствии с заданием.
Создаю таблицу projects со столбцами project_id, project_name, project_desc, где project_id будет первичным ключом.
Создать ассоциативную таблицу «Связи».
Создаю ассоциативную таблицу link со столбцами project_id, employee_id для связи таблиц projects и employees.
Заполнить созданные ранее таблицы.
Вывести на экран реляционную модель БД.
Выводы
Бала создана БД с несколькими таблицами, в котороый были связи один ко многим, многие ко многим. Отсутствие связи многогие ко многим удалось избежать с помощью ассоциативной таблицы в которой присутствовали первичные ключи обеих таблиц. Были установлены ограничение на ввод данных и значения по умолчанию при отсутствии введеных значений.