- •Министерство образования республики Беларусь
- •Содержание
- •Тема 1 проектированиереляционныхбазданных
- •Основные понятия по теме
- •Поставщики
- •Лабораторная работа разработка структуры реляционной базы данных
- •1 Каталог моделей оружия
- •2 Бюро путешествий
- •3 Гаражный кооператив
- •4 Учет драгметаллов в основных фондах
- •5 Склад компьютерных товаров
- •6 Склад оптовой базы
- •7 Склад сырья
- •8 Штатный состав фирмы
- •9 Работа с субподрядчиками
- •10 Обувной магазин
- •15 Газоснабжение
- •16 Домашняя видеотека
- •Тема 2 dos-ориентированные субд (на примере foxpro 2.6)
- •Основные понятия по теме
- •Лабораторная работа 1 создание и заполнение таблицы данных в интерактивном режиме
- •Лабораторная работа 2 использование индексирования для связи таблиц и поиска данных
- •Тема 3 субд microsoft access 2000
- •Основные понятия по теме
- •Лабораторная работа 1 создание схемы данных
- •Лабораторная работа 2 проектирование форм и отчетов
- •Тема 4 язык sql и его возможности
- •Основные понятия по теме
- •Лабораторная работа 1 использование запроса выборки данных для анализа отдельных таблиц
- •Лабораторная работа 2 анализ данных связанных таблиц с помощью средств sql
- •Лабораторная работа 3 модификация базы и структур таблиц средствами языка sql
- •Литература
- •Учебное издание
Поставщики
Поставщик |
Город |
Страна |
"Полесье" |
Киев |
Украина |
"Наталка" |
Киев |
Украина |
"Хуанхэ" |
Пекин |
Китай |
“Юрмала” |
Рига |
Латвия |
"Лайма" |
Рига |
Латвия |
... |
... |
... |
Рисунок 1.2 –Таблица реляционной БД с функциональной зависимостью
В приведенной таблице «Поставщики» поле «Страна» функционально зависит от составного ключа («Поставщик», «Город»). Однако последняя зависимость не является функционально полной, так как «Страна» функционально зависит и от части ключа – поля «Город».
Полная функциональная зависимость. Поле В находится в полной функциональной зависимости от составного поля А, если оно функционально зависит от А и не зависит функционально от любого подмножества поля А.
Многозначная зависимость. Поле А многозначно определяет поле В той же таблицы, если для каждого значения поля А существует хорошо определенное множество соответствующих значений В.
ОБУЧЕНИЕ
Дисциплина |
Преподаватель |
Учебник |
Информатика |
Шипилов П.А. |
Форсайт Р. Паскаль для всех |
Информатика |
Шипилов П.А. |
Уэйт М. и др. Язык Си |
Информатика |
Голованевский Г.Л. |
Форсайт Р. Паскаль для всех |
Информатика |
Голованевский Г.Л. |
Уэйт М. и др. Язык Си |
... |
... |
... |
Рисунок 1.3 – Таблица с многозначной зависимостью
Для примера рассмотрим таблицу "Обучение", приведенную на рисунке 1.3. В ней есть многозначная зависимость "Дисциплина-Преподаватель": дисциплина (в примере Информатика) может читаться несколькими преподавателями (в примере Шипиловым и Голованевским). Есть и другая многозначная зависимость "Дисциплина-Учебник": при изучении Информатики используются учебники "Паскаль для всех" и "Язык Си". При этом Преподаватель и Учебник не связны функциональной зависимостью, что приводит к появлению избыточности (для добавление еще одного учебника придется ввести в таблицу две новых строки). Дело улучшается при замене этой таблицы на две: (Дисциплина-Преподаватель и Дисциплина-Учебник).
Неключевым атрибутом называется любой атрибут отношения, не входящий в состав первичного ключа (в частности, первичного).
Взаимно независимые атрибуты: два или более атрибута взаимно независимы, если ни один из этих атрибутов не является функционально зависимым от других.
При классическом подходе к проектированию базы данных весь процесс проектирования производится в терминах реляционной модели данных методом последовательных приближений к удовлетворительному набору схем отношений. Исходной точкой является представление предметной области в виде одного или нескольких отношений, и на каждом шаге проектирования производится некоторый набор схем отношений, обладающих лучшими свойствами. Процесс проектирования представляет собой процесс нормализации схем отношений.
Основной формой считается 3НФ – для большинства баз данных она является достаточной для обеспечения целей проектирования.
1НФ - таблица находится в первой нормальной форме (1НФ) тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и ни одно из ее ключевых полей не пусто. (Любое поле таблицы содержит неделимую информацию и в таблице определен первичный ключ).
2НФ - Таблица находится во второй нормальной форме (2NF) в том и только в том случае, когда находится в 1NF, и каждый ее неключевой атрибут полностью зависит от первичного ключа.
3НФ – Таблица находится в третьей нормальной форме (3NF) в том и только в том случае, если находится в 2NF и каждый неключевой атрибут нетранзитивно зависит от первичного ключа. (Иными словами, таблица должна находиться во второй нормальной форме и ни одно из ее неключевых полей не должно однозначно идентифицироваться значением другого неключевого поля (полей)).
Теоретики реляционных систем Кодд и Бойс обосновали и предложили более строгое определение для 3НФ, которое учитывает, что в таблице может быть несколько возможных ключей. Таблица, соответствующая этому определению называется таблицей в улучшенной третьей форме или таблицей в нормальной форме Бойса-Кодда.
Таблица находится в нормальной форме Бойса-Кодда (НФБК), если и только если любая функциональная зависимость между его полями сводится к полной функциональной зависимости от возможного ключа.
В следующих нормальных формах (4НФ и 5НФ) учитываются не только функциональные, но и многозначные зависимости между полями таблицы. Для их описания познакомимся с понятием полной декомпозиции таблицы.
Полной декомпозицией таблицы называют такую совокупность произвольного числа ее проекций, соединение которых полностью совпадает с содержимым таблицы.
Теперь можно дать определения высших нормальных форм. И сначала будет дано определение для последней из предложенных - 5НФ.
5НФ - Таблица находится в пятой нормальной форме тогда и только тогда, когда в каждой ее полной декомпозиции все проекции содержат возможный ключ. Таблица, не имеющая ни одной полной декомпозиции, также находится в 5НФ.
4НФ - Четвертая нормальная форма является частным случаем 5НФ, когда полная декомпозиция должна быть соединением ровно двух проекций. Весьма не просто подобрать реальную таблицу, которая находилась бы в 4НФ, но не была бы в 5НФ.
Третья нормальная форма считается оптимальной для небольших баз данных, при проведении дальнейшей нормализации следует учитывать, что при увеличении количества связанных таблиц увеличивается время обработки информации, хранящейся в них. Поэтому разработчик должен сам принимать решение о том, какая ступень нормализации будет оптимальной для проектируемой базы данных.
Вопросы для самоконтроля:
дайте понятие базы данных;
что такое реляционная модель данных;
дайте определение объекта, атрибута, отношения, кортежа, схемы отношений;
что такое нормализация, нормальных форм;
1, 2, 3 нормальные формы. Дайте определение.