Первичные ключи. Что выбрать в качестве первичных ключей для каждой из таблиц?

Рассмотрим таблицу Клиент. Среди ее столбцов очевидным кандидатом на первичный ключ является Название. Однако эта комбинация будет удовлетворять нас, пока таблица не разрастется до такой степени, что в ней появятся фирмы с одинаковыми названиями. Например, как только в таблице появятся два филиала (с одинаковыми названиями) одной и той же фирмы, поле Название перестанет однозначно идентифицировать каждый филиал.

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

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

- естественный первичный ключ (однозначно идентифицирует строку)

- суррогатный ключ (создан исключительно для удобства)

Первичные ключи могут быть простыми и составными. Примерами простых первичных ключей могут служить Idn (таблицы Города, Группы, Склад и т.д.), составных – Idn_группы и Idn_мат.цен (таблица Мат.ценности).

Примечание: выбор первичных ключей является одним из основных шагов при проектировании базы данных. Несмотря на их важность, ранние версии SQL не поддерживали определение первичных ключей. ANSI-стандарт SQL 1992 года, принятый сегодня большинством производителей, поддерживает предложение PRIMARY KEY в инструкции CREATE TABLE.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: