Skip to main content

Выбор основного ключа для базы данных

Основной принцип Ключей Мастерства (Май 2024)

Основной принцип Ключей Мастерства (Май 2024)
Anonim

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

Почему важный ключ является важным

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

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

Низкий выбор первичных ключей

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

  • Почтовые индексы не делайте хороших первичных ключей для таблицы городов. Если вы создаете простую таблицу поиска городов, почтовый индекс кажется логическим первичным ключом. Однако при дальнейшем расследовании вы можете понять, что более одного города имеет почтовый индекс. Например, города Нью-Джерси Нептун, Нептун-Сити, Тинтон-Фолс и Уолл-Тауншип имеют общий почтовый индекс 07753.
  • Номера социального страхования не делайте хороших первичных ключей по многим причинам. Большинство людей считают, что их SSN являются частными и не хотят, чтобы они были хорошо видны пользователям базы данных. У некоторых людей нет SSN - иностранцев или иммигрантов, которые никогда не получали карточку социального страхования. SSN также могут быть повторно использованы после смерти человека. У человека может быть более одного SSN на протяжении всей жизни, когда Администрация социального обеспечения выдает новый номер в случаях мошенничества или кражи личных данных.
  • Адрес электронной почты также являются плохим выбором для первичного ключа. Хотя они уникальны, они могут со временем меняться. Кроме того, не у всех есть адрес электронной почты.

    Выбор эффективного первичного ключа

    Итак, что делает хороший первичный ключ? В большинстве случаев обращайтесь к своей базе данных для поддержки.

    Лучшей практикой в ​​области проектирования баз данных является использование внутреннего первичного ключа. Ваша система управления базами данных обычно может генерировать уникальный идентификатор, который не имеет значения за пределами системы баз данных. Например, вы можете использовать тип данных Microsoft Access AutoNumber для создания поля с именем RecordID. Тип данных AutoNumber автоматически увеличивает поле каждый раз, когда вы создаете запись. Хотя сам номер бессмыслен, он обеспечивает надежный способ ссылки на отдельную запись в запросах.

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