LR2.Tyutterin_Yakov_Z1411
.pdfМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
КАФЕДРА ПРИКЛАДНОЙ ИНФОРМАТИКИ
ОЦЕНКА
ПРЕПОДАВАТЕЛЬ
канд. техн. наук, доц. |
|
Е. Л. Турнецкая |
должность, уч. степень, звание |
подпись, дата |
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №2
Создание базы данных средствами графического клиента MySql WORKBENCH
по дисциплине: Базы данных
РАБОТУ ВЫПОЛНИЛ |
|
|
|
|
|
СТУДЕНТ гр. № |
Z1411 |
|
|
Я. Н. Тюттерин |
|
|
|
|
|
|
|
|
номер группы |
подпись, дата |
|
инициалы, фамилия |
|
Студенческий билет № |
2022/4886 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Санкт-Петербург 2024
Лабораторная работа № 2 РЕАЛИЗАЦИЯ БД НА СЕРВЕРЕ MYSQL
Цели работы: даталогическое проектирование реляционной БД в среде MySQL Workbech, физическая реализация БД на основе модели данных, заполнение БД данными.
Вариант 18:
1.Клиенты (Код клиента, Фамилия, Имя, Телефон).
2.Стрижки (Код стрижки, Название, Цена).
3.Парикмахерские услуги (Код услуги, Код клиента, Код стрижки, Дата, Цена).
Так как клиент для сервера БД MySql некорректно работает на операционной системе MacOS на процессорах M-серии, в качестве клиента будет использоваться DBeaver, который представляет собой SQL-клиентское программное приложение и инструмент для администрирования баз данных. Для взаимодействия с реляционными базами данных DBeaver использует интерфейс JDBC (Application Programming Interface) с
использованием драйвера JDBC.
В результате выполнения запроса, была сформирована схема БД:
Дополнительно для даты со временем было задано стандартное значение, то есть при вставке задавать его необязательно, так как при вставке оно будет задано автоматически на основе текущей даты и времени. Также для поддержания целостности данных в таблице services были заданы внешние ключи для связи с таблицами haircuts и clients. Благодаря этому, нельзя добавить запись в таблицу services, если будет отсутствовать запись в haircuts с кодом(code), указанным в записи code_haircut. Аналогично и в случае с code_client. Также накладывается ограничение на попытку удаления записей из таблиц clients/haircuts, если присутствует связанные записи в таблице services.
Диаграмма связей выглядит таким образом:
Диаграмма сохранена на рабочий стол:
Результат выполнения SQL-запроса на заполнение таблицы clients
INSERT INTO clients (surname, name, phone) VALUES
('Tyutterin', 'Yakov', '+79818837811'), ('Makarov', 'Maksim', '+79118837811'), ('Krotov', 'Alex', '+79418837811'), ('Mokov', 'Vladislav', '+79998837844'), ('Seleniumov', 'Testovi4', '+79218834811'),
('Jmeterovi4', 'Test', '+79813337811');
Получение всех записей из таблицы clients
Результат выполнения запроса на вставку в таблицу haircuts:
INSERT INTO haircuts (name, price) VALUES
('Cornrows', 1000), ('Pigtails', 600), ('Ponytail', 700),
('Flat top haircut', 200), ('Spiky', 500), ('Shaved head', 300), ('Wavy hair', 400), ('Fringe', 1200), ('Wave', 1500);
Получение всех записей из таблицы haircuts:
Результат вставки в таблицу services
INSERT INTO services (code_client, code_haircut, price) VALUES
(1, 3, 3456), (2, 2, 1434), (6, 1, 1000), (1, 2, 788), (3, 1, 1000), (5, 2, 543), (1, 5, 1000), (3, 6, 545), (3, 8, 1000), (1, 9, 322), (3, 2, 444), (5, 6, 1000),
(1, 5, 700);
Получение всех записей из таблицы services:
В качестве даты используется текущее значение даты и времени на момент записи, так как было задано стандартное значение, если ничего не будет передано.
Также можно проверить, что за счет введения ограничений(связей с таблицами clients и haircuts), нет возможности добавить запись с отсутствующим code из этих таблиц.
Для несуществующего code из clients:
Для несуществующего code из haircuts:
Вывод
В результате проделанной работы была спроектирована схема БД и входящие в нее таблицы были заполнены данными. Познакомился с ограничениями, накладываемые на значения столбцов таблиц. Также было разобрано и применено понятие связи