Нормализация структуры БД

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

Для указания уникального поля используется понятие ключевого поля. При создании структуры таблиц одно поле можно назначить ключевым. С ключевыми полями компьютер работает особо. Он проверяет их уникальность. Ключевое поле – очевидный кандидат для создания связей. Иногда ключевое поле называют первичным ключем.

Как правило, уникальное поле создают искусственно. Для этого нужно первым свойством каждой сущности указать номер отдельного экземпляра по порядку. Это поле должно иметь тип Счетчик. Ввести два одинаковых значения в такое поле нельзя по определению, поскольку приращение значения поля производятся автоматически. Связь между таблицами будет вестись в дальнейшем именно по этому полю.

Нормализация представляет собой построение так называемой концептуальной модели БД, которое сводится к представлению инфологической модели в терминах выбранной СУБД (в данном случаи Access). Концептуальная модель имеет вид, немного отличающийся от инфологической, но строится на основе инфологической.

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

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

Концептуальная модель по предметной области «Зоопарк» приведена на рисунке ниже.

Вид Размещение Помещение Животное Сотрудники

1 1 1

N

N N

N

 

Рис.2.1. Концептуальная модель по предметной области «Зоопарк»

В каждую подчиненную таблицу для построения связи должно быть внесено ключевое поле из главной таблицы.