Шаг 5 - Ключевые и уникальные поля

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

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

Уникальное поле - это поле, значения в котором не могут повторяться.

Поле Фамилия в таблице Автор вполне может содержать нескольких Ивановых, Петровых или Сидоровых, точно также как поле Имя может пестрить различными Аланами, Эдуардами и Робертами. Это означает, что эти поля не являются уникальными и поэтому их нельзя использовать для связи между таблицами. Поле Название - более удачный кандидат на почетное звание уникального поля, но не тут то было... Многие современные авторы очень любят называть свои произведения в точности так, как это делали Пушкин, Лермонтов или Толстой. Что же тогда остается делать?

Выход всегда есть! Если ни одно поле в Вашей таблице не приемлемо как уникальное, то его можно создать искусственно. Например, введя в таблицу шифр записи. Это могут быть буквы (например, первые буквы слов названия кники), цифры или их комбинация, но самое главное - они не будут повторяться, а значит, станут уникальными для каждой записи в таблице.

5_1.gif (5188 b)

Скорее всего, поле Шифр окажется уникальным и позволит создать связи между таблицами, но было бы хорошо, если бы компьютер сигнализировал нам в том случае, если вдруг записи в этом поле повторяться. Для этого вводится понятие ключевое поле. При создании структуры таблиц, можно одно поле (или одну комбинацию полей) сделать ключевым. С такими полями компьютер работает особо. Он автоматически проверяет их уникальность и значительно быстрее выполняет сортировку по таким полям. Ключевое поле в этой ситуации становится очевидным кандидатом для создания связей между таблицами. Иногда такое поле еще называют первичным ключом.
Если при создании таблицы Вы не задали ключевое поле, то СУБД вежливо напомнит о том, что первичный ключ не задан и предложит создать такое поле.

5_2.gif (3483 b)

Часто в качестве уникального поля создают поле, имеющее тип Счетчик (см. типы полей в "Шаг 3 - Свойства и типы полей"). Ввести два одинаковых значения в такое поле просто невозможно. Приращение значения этого поля происходит автоматически, при добавлении новой записи в таблицу, независимо от желания создающего эту запись. Компьютер сам следит за этим полем и не позволит вносить туда какие-либо изменения.

5_3.gif (5103 b)


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Урсатий Владимир - 27.11.2002