Разница между первичным ключом и внешним ключом (с таблицей)

Оглавление:

Anonim

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

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

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

Первичный ключ против внешнего ключа

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

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

Таблица сравнения первичного и внешнего ключей (в табличной форме)

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

Что такое первичный ключ?

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

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

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

Что такое внешний ключ?

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

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

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

Основные различия между первичным ключом и внешним ключом

Вывод

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

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

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

Разница между первичным ключом и внешним ключом (с таблицей)