Проектирование реляционных БД на основе принципов нормализации"
Что такое проект? Это схема эскиз некоторого устройства, который в дальнейшем будет воплощен в реальность.
Процесс проектирования БД представляет собой последовательность переходов от неформального словесного описания информационной структуры предметной области к формализованному описанию объектов предметной области в терминах некоторой модели. В общем случае можно выделить следующие этапы проектирования: Системный анализ и словесное описание информационных объектов предметной области. Проектирование инфологической модели предметной области частично формализованное описание объектов предметной области в терминах некоторой семантической модели, например, в терминах Е-модели. Логическое проектирование БД, то есть описание БД в терминах принятой диалогической модели данных.
Физическое проектирование БД, то есть выбор эффективного размещения БД на внешних носителях для обеспечения наиболее эффективной работы приложения. Если мы учтем, что между вторым и третьим этапами необходимо принять решение, с использованием какой стандартной СУБД будет реализовываться наш проект, то условно процесс проектирования БД можно представить последовательностью выполнения пяти соответствующих этапов (см. рис. 6.2). Рассмотрим более подробно этапы проектирования БД.
Системный анализ предметной области Функциональный подход реализует принцип движения «от задач» и применяется тогда, когда заранее известны функции некоторой группы лиц и комплексов задач. Предметный подход информационные потребности будущих пользователей БД жестко не фиксируются.
Пример описания предметной области Пусть требуется разработать информационную систему для автоматизации учета получения и выдачи книг в библиотеке. Система должна предусматривать режимы ведения системного каталога, отражающего перечень областей знаний, по которым имеются книги в библиотеке. Внутри библиотеки области знаний в систематическом каталоге могут иметь уникальный внутренний номер и полное наименование. Каждая книга может содержать сведения из нескольких областей знаний. Каждая книга в библиотеке может присутствовать в нескольких экземплярах.
Даталогическое проектирование Описание внешних моделей в терминах выбранной СУБД. Описание декларативных правил поддержки целостности базы данных. Разработка процедур поддержки семантической целостности базы данных. Однако перед тем как описывать построенную схему в терминах выбранной СУБД, нам надо выстроить эту схему. Именно этому процессу и посвящен данный раздел. Мы должны построить корректную схему БД, ориентируясь на реляционную модель данных.
Проектирование схемы БД путем декомпозиции (разбиения) путем синтеза
Теория БД первая нормальная форма (1NF); первая нормальная форма (1NF); вторая нормальная форма (2NF); вторая нормальная форма (2NF); третья нормальная форма (3NF); третья нормальная форма (3NF); нормальная форма Бойса Кодда (BCNF); нормальная форма Бойса Кодда (BCNF); четвертая нормальная форма (4NF); четвертая нормальная форма (4NF); пятая нормальная форма, или форма проекции- соединения (5NF или PJNF). пятая нормальная форма, или форма проекции- соединения (5NF или PJNF).
ТЕОРЕМА ФЕЙДЖИНА Многозначные зависимости обладают интересным свойством "двойственности", которое демонстрирует следующая лемма. Лемма Фейджина В отношении r {A, B, C} выполняется MVD A->->B в том и только в том случае, когда выполняется MVD A->->C