
- •Основные принципы построения баз данных, проблемы хранения больших объемов информации.
- •Уровни представления информации, понятие модели данных.
- •Сетевая
- •Основные типы субд.
- •Реляционная модель данных, основные понятия.
- •Теоретические основы реляционного исчисления, использование исчисления предикатов первого порядка.
- •Иерархический и сетевой подходы при построении баз данных, основные понятия, достоинства и недостатки.
- •Реляционные базы данных: достоинства и недостатки.
- •Основные компоненты субд и их взаимодействие. Типы и структуры данных.
- •Обработка данных в субд, основные методы доступа к данным, использование структуры данных типа «дерево».
- •Поиск информации в бд с использованием структуры типа «бинарное дерево».
- •Поиск информации в бд с использованием структуры типа «сильно ветвящееся дерево».
- •Методы хеширования для реализации доступа к данным по ключу.
- •Представление данных с помощью модели «сущность-связь», основные элементы модели.
- •Типы и характеристики связей сущностей;
- •Построение диаграммы «сущность-связь» в различных нотациях.
- •Нотация Чена.
- •Нотация Мартина
- •Нотация idef1x.
- •Нотация Баркера.
- •Проектирование реляционных баз данных, основные понятия, оценки текущего проекта бд.
- •Понятие ключа в базах данных, первичные и внешние ключи.
- •Нормализация в реляционных базах данных, понятие нормальной формы при проектировании баз данных.
- •1Нф: Основные определения и правила преобразования.
- •2Нф: Основные определения и правила преобразования.
- •3Нф: Основные определения и правила преобразования.
1Нф: Основные определения и правила преобразования.
Первая нормальная форма (1NF) базовая нормальная форма отношения в реляционной модели данных. Отношение находится в первой нормальной форме тогда и только тогда, когда в любом допустимом значении отношения каждый его кортеж содержит только одно значение для каждого из атрибутов.
В реляционной модели отношение всегда находится в первой нормальной форме по определению понятия отношение.
Что же касается различных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в 1NF.
таблица нормализована (эквивалентно — находится в первой нормальной форме) тогда и только тогда, когда она является прямым и верным представлением некоторого отношения, кокретно:
Порядок строк не несет в себе никакой информации.
Порядок столбцов не несет в себе никакой информации.
Нет повторяющихся строк.
Каждое пересечение строки и столбца содержит ровно одно значение из соответствующего домена (и больше ничего).
Все столбцы являются обычными - в таблице нет «скрытых» компонентов, которые
могут быть доступны только в вызове некоторого специального оператора взамен ссылок на имена регулярных столбцов, или которые приводят к побочным эффектам для строк или таблиц при вызове стандартных операторов. Таким образом, например, строки не имеют идентификаторов кроме обычных значений потенциальных ключей (без скрытых «идентификаторов строк» или «идентификаторов объектов»). Они также не имеют скрытых временных меток
Таблица 3 Ненормализованная
|
Таблица 4 Нормализованная
|
2Нф: Основные определения и правила преобразования.
Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме, и при этом любой его атрибут, не входящий в состав потенциального ключа, функционально полно зависит от каждого потенциального ключа. Функционально полная зависимость означает, что атрибут функционально зависит от всего составного потенциального ключа, но при этом не находится в функциональной зависимости от какой-либо из входящих в него частей. Или другими словами: в 2NF нет неключевых атрибутов, зависящих от части составного потенциального ключа.
Второе важное значение второй нормальной формы состоит в том, что она по определению запрещает наличие неключевых атрибутов, которые не зависят от потенциального ключа. Таким образом, 2NF запрещает создавать отношения как несвязанные наборы атрибутов.
Пример приведения таблицы ко второй нормальной форме
Таблица 5 Сотрудник и должность - первичный ключ
Сотрудник |
Должность |
Зарплата |
Наличие компьютера |
Гришин |
Кладовщик |
20000 |
Нет |
Васильев |
Программист |
40000 |
Есть |
Васильев |
Кладовщик |
25000 |
Нет |
Зарплату сотруднику каждый начальник устанавливает сам, но её границы зависят от должности. Наличие же компьютера у сотрудника зависит только от должности, то есть зависимость от первичного ключа неполная.
Т.е. первичный ключ, как и в исходной таблице, составной, но единственный не входящий в него атрибут Зарплата будет зависит от всего ключа, то есть полно.
В результате приведения к 2NF получаются две таблицы:
Таблица 6 В рельтате приведения получаются 2 теблицы:
|
|