
Билет № 16. 1. Правила устранения избыточных функциональных зависимостей. 2. Раскрывающиеся списки в формах. Типы источников данных в списках. Билет № 17. 1. Порядок построения отношений в 3НФ по овал-диаграмме. 2. Интерактивные запросы в СУБД Access. Порядок создания и использования пользовательского окна для задания параметров. Билет № 18. 1. Порядок декомпозиции овал-диаграммы на схемы отношений в 3НФ.. 2. Способы определения параметров многопараметрического запроса. Порядок создания пользовательских окон ведения диалога.. Билет № 19. 1. Понятия нормальных форм отношений и способов их получения.. 2. Порядок создания кнопок.
16
Избыточные функциональные зависимости. Правила вывода
Если зависимость заключает информацию, которая может быть получена из других зависимостей, то такую зависимость называют избыточной зависимостью.
Правила вывода применяются к списку функциональных зависимостей с целью избавиться от избыточных зависимостей.
Набор функциональных зависимостей, получаемый из исходного набора функциональных зависимостей удалением всех избыточных функциональных зависимостей с помощью правила вывода называется минимальным покрытием.
Избыточные функциональные зависимости следует удалять из набора по одной, каждый раз заново анализируя полученный набор функциональных зависимостей на присутствие в нем избыточных зависимостей.
Правило 1. Транзитивные зависимости
Транзитивная зависимость является избыточной (рис. 6.6).
|
Рис. 6.6 Правило 1. |
Транзитивные зависимости можно удалять, но только по одной (рис. 6.7):
|
Рис. 6.7 Удаление транзитивных зависимостей. |
Первоначальные функциональные зависимости: A→B, A→C, A→D, C→D, B→C , B→D. Находим транзитивную зависимость, например: А→D, и удаляем её. Затем снова анализируем ситуацию, и находим следующую избыточную функциональную зависимость (например: А→С), удаляем её и так далее до тех пор, пока все транзитивные зависимости не будут удалены. В итоге получим
|
R1 (C,D) C→D R2 (B,C) B→C R3 (A,B) A→B |
Рис. 6.8 Отношения с удаленными транзитивными зависимостями. |
Правило 2. Корректные, но избыточные зависимости
а) Если существует А→ В, то зависимость A,Z→B – корректная, но избыточная.
б) Если существует А→В, то зависимость A,Z→B,Z – корректная, но избыточная.
a) |
|
б) |
|
Рис. 6.9 Правило 2. |
Правило 3. Объединение функциональных зависимостей
Объединение функциональных зависимостей.
Если А→В и А→С, то А→В,С
|
a) |
|
б) |
|
|
Рис. 6.10 Правило 3: объединение функциональных зависимостей. |
Правило 4. Декомпозиция функциональных зависимостей
Декомпозиция функциональных зависимостей.
Если А→В,С , то А→В и А→С
|
|
Рис. 6.11 Правило 4: декомпозиция функциональных зависимостей. |
Правило 5. Псевдотранзитивность
Если X→Y и Y,W→Z то зависимость X,W→Z, называется псевдотранзитивной и является избыточной функциональной зависимостью.
|
|
Рис. 6.12 Правило 5: Псевдотранзитивная зависимость. |
Раскрывающиеся списки
Если вводимых в поле значений много, удобно применять Списки.
В Списках могут быть любое количество полей и записей. Изменяя размеры списка, можно отображать больше или меньше записей. Если все элементы Списка не могут поместиться в окне установленных размеров, то используется вертикальная и/или горизонтальная полоса прокрутки. Выделенный элемент Списка является текущим вариантом выбора.
В Access элемент управления Поле со списком отличается от обычного списка следующими двумя особенностями.
1. Поле со списком сначала отображается как одна строка со стрелкой, щелкнув на которой можно открыть список нормальных размеров. Это позволяет сэкономить ценное пространство формы.
2. Как и поле, поле со списком позволяет ввести значение, которого нет в списке.
Поле со списком полезно использовать для отображения множества строк, доступ к которым можно получить с помощью вертикальной прокрутки.
Создание поля со списком аналогично созданию списка. Попробуйте самостоятельно создать поле со списком Специализация врача, однако набор значений введите самостоятельно. Итоговый результат должен получится такой же как на рис. 37.
Рис. 37. Форма с элементом Поле со списком
17
3NF - третья нормальная форма.
Перед обсуждением третьей нормальной формы необходимо ввести понятие транзитивной функциональной зависимости.