# Лабораторная работа 2. Литвинов Б23-503 ## **Концептуальное проектирование базы данных** ### **Цель** Построить логически корректную модель данных. ### **Содержание работы** Студент разрабатывает: * ER-диаграмму; * KB-диаграмму (ключи, ограничения, связи); * описание атрибутов и доменов; Студент должен понимать: * семантику удаления и обновления данных. ### **Отчетные материалы** * ER-диаграмма; * KB-диаграмма; * таблица атрибутов и доменов; # семантику удаления и обновления данных. Операции с дочерним отношением: - Вставка - корректное значение FK - Удаление - без ограничений - Модификация FK - корректное новое значение FK Операции с родительским отношением: - Вставка - без ограничений - Удаление - реакция на связанные записи: - - не удалять - - удалить все - - установить пустое значение (отсутствие связи) - Модификация PK - реакция аналогична # ER-диаграмма; Отношение связи DrugIntolerance - DrugEnum становится из `Many to many` -> `Many to one`. Одной категории лекарства соответствует множество записей о непереносимости, одна запись содержит одну категорию лекарства. Для одного и того же человека может быть создано несколько записей, показывающих множество непереносимых лекарств. ![ER](er.drawio.svg) # KB-диаграмма; ## Устранение неопределенных связей Many to Many Добавлены таблицы Class_Master и Class_Equipment. Для каждого Class должно быть 2 и более записей Class_Master ## Анализ альтернативных ключей. Person / E0 - ФИО Client / E1 - номер телефона - email - платежный счет Master / E2 - паспорт Studio / E3 - адрес ![KB](kb.drawio.svg) # таблица атрибутов и доменов;