Оформить и купить диплом на бланке ГОЗНАК без предоплаты

Пример проектирования концептуальной схемы

Рассмотрим пример проектирования базы данных обоими методами.

Пусть требуется спроектировать базу данных для приемной комиссии вуза. Пусть в результате обсуждения требований со стороны заказчика было установлено следующее.

В базе данных должны храниться сведения о поступающих, о полученных ими оценках, о времени и месте экзаменов и консультаций. Сведения о поступающем включают его фамилию, имя, отчество, пол, национальность, адрес постоянного проживания, адрес проживания на время экзаменов, сведения об образовании, средний балл аттестата, иностранный язык, указанный в аттестате, название кафедры и факультета, на которые он поступает, номер экзаменационного листа, экзаменационные оценки по каждому предмету, номер группы и номер потока, в которых он сдает экзамены, признак досрочного прекращения экзаменов, признак завершения экзаменов, средний балл по результатам экзаменов. Для каждого потока должны храниться сведения о датах консультаций, датах экзаменов, номере аудитории и фамилиях экзаменаторов, причем для каждого предмета.

Согласно методу проектирования по функциональным зависимостям составляем перечень атрибутов извлекая его из условий задачи:

ФИО – фамилия, имя, отчество поступающего; ПОЛ – пол; НАЦ – национальность; АДР_ПОСТ – адрес постоянного проживания; АДР_ВРЕМ – адрес проживания на время экзаменов; СВЕД_ОБРАЗ – сведения об образовании; БАЛЛ_АТТ – средний балл аттестата; ИН_ЯЗ – иностранный язык, указанный в аттестате; КАФ – кафедра; ФАК – факультет; НЭЛ – номер экзаменационного листа; ОЦЕНКА – экзаменационная оценка; ГРУППА – номер группы; ПОТОК – номер потока; П_ПРЕКР – признак досрочного прекращения экзаменов; П_ЗАВЕРШ – признак завершения экзаменов; БАЛЛ_ЭКЗ – средний балл по результатам экзаменов; ДАТА_КОНС – дата консультации; ДАТА_ЭКЗ – дата экзамена; АУД – номер аудитории; ФИО_ЭКЗ – фамилии экзаменаторов.

Устанавливаем функциональные зависимости между атрибутами.

Большая группа перечисленных атрибутов относится к конкретным сведениям о конкретном поступающем. Для этой группы нельзя использовать в качестве детерминанта атрибут ФИО, так как возможно полное совпадение фамилий, имен и отчеств у двух поступающих, однако вполне допустимо использование атрибута НЭЛ, так как приемная комиссия не имеет права выдать два экзаменационных листа с одинаковыми номерами. Из этих рассуждений следует функциональная зависимость НЭЛ -> (ФИО, ПОЛ, НАЦ, АДР_ПОСТ, АДР_ВРЕМ, СВЕД_ОБРАЗ, БАЛЛ_АТТ, ИН_ЯЗ, КАФ, ГРУППА, П_ПРЕКР, П_ЗАВЕРШ, БАЛЛ_ЭКЗ).

Оценки, полученные поступающим, входят в функциональную зависимость

(НЭЛ, ПРЕДМЕТ) -> ОЦЕНКА.

Информация о времени и месте проведения консультации и экзамена подчиняется функциональным зависимостям

(ДАТА_КОНС, АУД) -> (ПОТОК, ПРЕДМЕТ, ФИО_ЭКЗ);

(ДАТА_ЭКЗ, АУД) -> (ПОТОК, ПРЕДМЕТ, ФИО_ЭКЗ).

Так как консультация и экзамен не могут проходить одновременно в одной и той же аудитории, то можно ввести ролевые отношения. С этой целью следует заменить атрибуты ДАТА_КОНС и ДАТА_ЭКЗ на атрибут ДАТА и ввести атрибут ВИД (консультация или экзамен). Последние функциональные зависимости заменим на зависимость

(ДАТА, АУД) -> (ВИД, ПОТОК, ПРЕДМЕТ, ФИО_ЭКЗ).

Название кафедры однозначно задает факультет:

КАФ -> ФАК.

Номер группы однозначно определяет поток:

ГРУППА -> ПОТОК.

Анализируем полученные функциональные зависимости на соответствие нормальной форме Бойса-Кодда.

Возможным ключом универсального отношения может быть только агрегат

(НЭЛ, ПРЕДМЕТ, ДАТА, АУД).

Ни в одной из выявленных зависимостей детерминант не является возможным ключом. Поэтому отделяем пять отношений (по числу зависимостей) и продолжаем проверку на соответствие нормальной форме Бойса-Кодда. Конечный результат в форме концептуальной схемы имеет следующий вид:

Название: Приемная комиссия

Атрибуты и тип:

        ФИО                             симв(60);        ПОЛ                                симв(1);

        НАЦ;                            симв(20);        АДР_ПОСТ                симв(100);

        АДР_ВРЕМ               симв(100);        СВЕД_ОБРАЗ              симв(40);

        БАЛЛ_АТТ               число(2,1);        ИН_ЯЗ                          симв(20);

        КАФ                             симв(20);        ФАК                              симв(20);

        НЭЛ                             целый(6);        ОЦЕНКА                     целый(1);

        ГРУППА                      целый(5);        ПОТОК                        целый(3);

        П_ПРЕКР                            дата;        П_ЗАВЕРШ                        дата;

        БАЛЛ_ЭКЗ               число(2,1);        ДАТА_КОНС                      дата;

        ДАТА_ЭКЗ                         дата;        АУД                              целый(5);

        ФИО_ЭКЗ                 симв(100);

Отношения и ключи:

        ПОСТУПАЮЩИЙ (ФИО, ПОЛ, НАЦ, АДР_ПОСТ, АДР_ВРЕМ, СВЕД_ОБРАЗ, БАЛЛ_АТТ, ИН_ЯЗ, КАФ, *НЭЛ, ГРУППА, П_ПРЕКР, П_ЗАВЕРШ, БАЛЛ_ЭКЗ);

ЭКЗАМЕН (*НЭЛ, *ПРЕДМЕТ, ОЦЕНКА);

РАСПИСАНИЕ (*ДАТА, *АУД, ВИД, ПОТОК, ПРЕДМЕТ, ФИО_ЭКЗ);

ФАКУЛЬТЕТ (КАФ, ФАК);

ПОТОК (ГРУППА, ПОТОК).

Здесь тип данных “число” характеризуется общим количеством цифр и числом цифр после запятой.

Проектирование этой же базы данных методом ER-диаграмм начинаем с выявления сущностей и взаимосвязей между ними. Возможная ER-диаг-рамма изображена на рисунке.

При построении диаграммы объектам реального мира были сопоставлены сущности ПОСТУПАЮЩИЙ, ЭКЗАМЕН, РАСПИСАНИЕ, ГРУППА, ПОТОК, КАФЕДРА, ФАКУЛЬТЕТ.

Преобразуем ER-диаграмму по правилам, изложенным в лекции Проектирование с применением ER-диаграмм . К парам сущностей ГРУППА, ПОТОК и КАФЕДРА, ФАКУЛЬТЕТ с обязательными классами принадлежности к связям можно применить правило 4 и сопоставить им отношения ПОТОК и ФАКУЛЬТЕТ. Согласно тому же правилу 4 другим сущностям следует сопоставить по одному отношению. После этих преобразований результирующая концептуальная схема совпадет со схемой, полученной ранее методом функциональных зависимостей.