Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по информатике.doc
Скачиваний:
130
Добавлен:
26.11.2018
Размер:
3.8 Mб
Скачать

Вторая нормальная форма

О таблице говорят, что она находится во второй нормальной форме, если:

  1. она удовлетворяет условиям первой нормальной формы;

  2. любое не ключевое поле однозначно идентифицируется полным набором ключевых полей.

Из приведенного выше определения следует, что понятие второй нормальной нормы применимо только к таблицам, имеющим составной индекс (Заказы). Данная таблица не является таблицей во второй нормальной форме, поскольку поля Категория, Наименование товара и Цена однозначно определяются только одним из ключевых полей – Код товара.

Поэтому, для приведения таблицы Заказы ко второй нормальной форме, необходимо выделить из таблицы Заказы таблицу Товары, которая будет содержать информацию о товарах каждого типа. Для связывания таблиц Заказы и Товары используются поля Код товара.

Клиенты Заказы

Третья нормальная форма таблицы

О таблице говорят, что она находится в третьей нормальной форме, если:

  1. она удовлетворяет условиям второй нормальной формы;

  2. ни одно из не ключевых полей таблицы не идентифицируется с помощью другого не ключевого поля.

Сведение таблицы к третьей нормальной форме предполагает разделение таблицы с целью помещения в отдельную таблицу столбцов, которые не зависят от значения индекса, а зависят от другого не ключевого поля.

Так в таблице Клиенты поле Руководитель однозначно определяется значением поля Предприятие, поэтому следует создать таблицу Предприятия:

Предприятия

Руководитель

Таким образом, в таблице Клиенты будем хранить только название Предприятия.

Определение связей между таблицами

После установления структуры таблиц, необходимо определить связи между совпадающими полями другой таблицы.

Для этого следует произвести следующие действия:

  • вызвать команду Сервис/Схема данных или кнопку Схема данных из панели инструментов;

  • добавить в окно связей окно Добавить таблицу (п.м. Связь/Добавить таблицу или кнопка Добавить таблицу).

Добавить

Таблицы

Запросы

Табл. и заказы

Закрыть

Заказы

Клиенты

Предприятия

Товары

  • в списке таблиц, последовательно выделяя таблицы, нажимать кнопку Добавить или выделить сразу все и Добавить.

Схема данных

  • для связи полей выбрать поле первой таблицы (Код клиента) и переместить его мышью на соответствующее поле в первой таблице (Код клиента).

Ключевые поля в списке полей обычно отображаются полужирным шрифтом. Связанные поля не обязательно должны иметь одно название, но обязательно должны иметь одинаковые имена данных (а для Числового поля – еще и одинаковое свойство Размер поля).

На экране откроется окно диалога «Связи».

Связи

Таблица/Запрос Связанная Таблица/Запрос

Клиенты Заказы

Код клиента Код клиента

 Обеспечение целостности данных

 Каскадное обновление связей полей

 Каскадное удаление связей записей

Тип отношений: один-ко-многим

Тип создаваемой связи зависит от полей, которые были указаны при определении связи:

  • отношение «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс;

  • отношение «один-к-одному» создается в том случае, если оба связываемых поля являются уникальными или ключевыми;

  • связь «много-ко-многим» фактически представляет две связи с отношением «один-ко-многим» через третью таблицу, ключ которой состоит, по крайней мере, из двух полей, которые являются полями внешнего ключа в двух других таблицах.

При переносе поля, не являющегося ключевым, на другое такое же поле, создаются неопределенные отношения.

В окне диалога «Схема данных» можно не только устанавливать связи между таблицами, но и выполнять следующие действия:

  • изменять структуру таблицы;

  • изменять существующую связь;

  • удалять связь;

  • удалять таблицу из окна диалога «Схема данных»;

  • вывести на экран все существующие связи или связи только для конкретной таблицы;

  • определить связи для запросов, не задавая условия целостности данных.