
- •Основные определения и требования к базам данных
- •Определения
- •Категории баз данных
- •Требования к базе данных
- •Неизбыточность и непротиворечивость данных
- •Защита данных от программных и аппаратных сбоев
- •Мобильность прикладного программного обеспечения
- •Секретность данных
- •Представление и описание информации
- •Плоские (двойные) файлы
- •Ключи
- •Системы управления базами данных (СУБД)
- •Языковые средства для работы с базами данных
- •Глобальное логическое описание
- •Компоненты описания схемы данных
- •Классификация моделей данных
- •Иерархические модели данных
- •Сетевые модели данных
- •Классификация структурированных моделей данных
- •Реляционные модели данных
- •Преобразование структурированных моделей к реляционному виду
- •Ключи
- •Операции реляционной алгебры
- •Декомпозиция отношений
- •Функциональные зависимости
- •Правила логического следования
- •Аксиомы функциональных зависимостей
- •Ключи
- •Вторая нормальная форма
- •Правило построение второй нормальной формы:
- •Преимущества второй нормальной формы перед первой
- •Третья нормальная форма
- •Правило построения
- •Преимущества третьей нормальной формы
- •Построение канонической модели общего вида
- •Построение канонической модели реляционного типа
- •Построение замыканий
- •Построение минимального покрытия множества функциональных зависимостей
- •Декомпозиция схем отношений
- •Многозначные зависимости
- •Построение канонической модели
- •Физическая организация базы данных. Алгоритмы работы СУБД
- •Введение
- •Архитектуры современных ЭВМ
- •Факторы, влияющие на выбор физической организации БД (технология, представление, алгоритмы и прочее)
- •Схема временных затрат при реализации запросов
- •Классификация методов доступа
- •Последовательный метод доступа
- •Индексно-произвольный метод доступа
- •Прямой метод доступа
- •Методы хеширования
- •Списки и инвертированные файлы
http://slava.fateback.com |
14 |
2Глобальное логическое описание
Существует два подхода к построению глобального логического описания: декомпозиционный и синтетический. Ярким представителем декомпозиционного подхода является модель «сущность-связь» (ER, Entity-Relationship) Чена. Но в рамках этого подхода, во-первых, неразрешимы проблемы синонимов и омонимов, во-вторых, понятие объекта носит эвристический характер и, в-третьих, отсутствует возможность удаления избыточных связей, поскольку они имеют семантическую нагрузку — и, следовательно, неразрешимы проблемы общих данных, данных пересечения и изолированных данных. Допустимы ER-диаграммы только на этапе составления технического задания на проектирование информационной системы.
Синтетический подход избавлен от подобных недостатков. Из теории систем известно, что построение любого объекта состоит из двух шагов: полной декомпозиции элементарных объектов (атрибутов) с последующим синтезом системы. Подход применим и к построению схемы БД.
2.1Компоненты описания схемы данных
Определение 2.1 Элементом данных (атрибутом) зовется атомарное (неделимое) данное с определенным типом и наименованием.
Пример. В прикладной области отдела кадров «ФИО сотрудника» не является атрибутом, так как нарушена атомарность и требуется вместо него использовать отдельно «Фамилия сотрудника», «Имя сотрудника» и «Отчество сотрудника». Однако в другой прикладной области, например, железнодорожной кассы, такой атрибут допустим, поскольку основным показателем являются паспортные данные.
Требования к именам уже звучали в рамках курса: наименование элемента данных должно полностью отражать его семантику без контекста. Требование естественное: в синтетическом подходе не известно, какому объекту принадлежит атрибут.
Пример. Точнее — примеры неправильных атрибутов.
•Цех. Этот атрибут не обладает однозначной семантической интерпретацией. Возможно, разработчик имел в виду номер цеха, его наименование, продукцию или чтото еще.
•Средняя зарплата отдела. При заполнении значения данного атрибута пользователь должен сам подсчитать его значение. В БД должны храниться зарплата каждого сотрудника в отдельности, а подсчет максимальной, минимальной и средней зарплат должна выполнять прикладная программа.
•Возраст сотрудника. Значение атрибута является изменяемой величиной. Вместо нее лучше хранить дату рождения сотрудника. Причина в том, что в БД должны использоваться элементы данных, изменение значений которых инициируется некоторыми событиями. Например, элемент данных «Номер курса» для студента тоже меняется со временем, но это происходит только на основании приказа о переводе.
•Стаж работы. Тоже изменяемая величина, и атрибут необходимо заменить на пару атрибутов «Стаж работы до приема» и «Дата приема на работу».

http://slava.fateback.com |
15 |
Определение 2.2 В БД допускается комплексирование элемента данных из нескольких значений, если их количество фиксировано и сами значения существенно зависят друг от друга. Такой элемент данных зовется агрегатом (значение агрегата должно полностью обслуживаться средствами СУБД).
Примером агрегата может быть дата, время или расширенное время.
Определение 2.3 Между элементами на схеме выполняется установление связей, причем связи отражают количественное соотнесение между значениями элементов данных и не имеют никакого содержания.
Замечание. Если установленной на схеме связи удается присвоить наименование, то потерян атрибут с содержанием, соответствующим наименованию.
Связи всегда направлены и имеют следующие типы:
1.1:1, или связь «один-к-одному» — одному значению первого элемента данных соответствует одно значение второго элемента. Возможно, было бы лучше усилить формулировку «. . . соответствует одно, и только одно. . . », но такая ситуация практически невозможна и встает проблема неопределенных значений. Пример: «Номер читательского билета» — «Номер зачетки».
Номер |
Номер |
читательского |
зачетной книжки |
билета |
|
2.М:1, или связь «много-к-одному» — множеству значений первого элемента данных соответствует одно значение второго элемента. Пример: «Табельный номер» — «Должность сотрудника».
Табельный Должность
сотрудника
номер
3.1:М, или связь «один-ко-многим» — одному значению первого элемента данных соответствует множество значений второго. Пример: «Должность сотрудника» — «Табельный номер».
Табельный Должность
сотрудника
номер
4.М:М, или связь «много-ко-многим» — множеству значений первого элемента данных соответствует множество значений второго элемента данных. Пример: «Должность сотрудника» — «Оклад сотрудника».