Определим набор отношений, участвующих в этой модели:
Описание сильных сущностей:
Рабочее место (ID, Место работы (фирма), Требуемая специальность, Предлагаемая заработная плата, Условия труда, Необходимый стаж, Вакантность.). Primarykey: ID.
Резюме (Фамилия, Имя, Отчество, Возраст, Стаж, Образование (специальность)). Primarykey: RecordNumber.
Описание слабых сущностей:
Сотрудник (Фамилия, Имя, Отчество, Возраст, Стаж, Дата трудоустройства, Образование (специальность), Заработная плата). Primarykey: ID.
Нормализация полученных отношений (до 3НФ)
Для приведения таблиц к 1НФ требуется составить прямоугольные таблицы (один атрибут — один столбец) и разбить сложные атрибуты на простые, а многозначные атрибуты вынести в отдельные отношения. Поскольку таких атрибутов у нас нету, то переходим к следующему этапу.
В данной базе данных первичные ключи имеют отношения группы — студенты, студентыжурнал успеваемости и учебный план — журнал успеваемости. Не ключевые атрибуты этих отношений функционально полно зависят от первичных ключей. Данное условие позволяет утверждать, что этап 2НФ пройден успешно.
Для того, что бы этап 3НФ был пройден, был проделан следующий анализ: в отношении Сотрудники атрибут «ID» полностью зависит от первичного ключа «ID».
Все атрибуты в отношениях зависят от первичных ключей, поэтому нет никакого смысла выносить их в отдельные отношения.
Определение требований поддержки целостности данных
Ограничение целостности представляет собой набор правил, которые позволяют предотвратить ввод в БД противоречивых данных.
Различают следующие типы целостности данных:
Обязательные данные Указаны в Таблице «Атрибуты сущностей и связей» приложение, А Ограничение для доменов атрибутов Указаны в Таблице «Атрибуты сущностей и связей» приложение, А Целостность сущностей Заданные первичные ключи не должны иметь NULL-значения.
Ссылочная целостность Для связи таблиц определены внешние ключи, которые имеют соответствующее значение первичного ключа.
Требования предметной области В БД осуществляется контроль заполнения данных или отсутствия данных. Обработка ситуации: попытка повторного ввода существующего ID рабочего места.