Разница между супер-ключом и ключом-кандидатом
Содержание
Ключи являются неотъемлемыми элементами любой реляционной базы данных. Он идентифицирует каждый кортеж в отношении однозначно. Ключи также используются для установления взаимосвязи между таблицами в схеме. В этой статье мы обсудим два основных ключа любой базы данных - супер ключ и ключ-кандидат. Каждый ключ-кандидат является супер-ключом, но каждый супер-ключ может быть или не быть ключом-кандидатом. Есть много других отличительных факторов между супер ключом и ключом-кандидатом, которые я кратко обсудил в сравнительной таблице ниже.
- Сравнительная таблица
- Определение
- Ключевые отличия
- Вывод
Сравнительная таблица
Основа для сравнения | Супер Ключ | Ключ-кандидат |
---|---|---|
основной | Единственный атрибут или набор атрибутов, который однозначно идентифицирует все атрибуты в отношении, является супер-ключом. | Подходящее подмножество суперключа, которое также является суперключем, является ключом-кандидатом. |
Один в другой | Не обязательно, чтобы все супер ключи были ключами-кандидатами. | Все ключи-кандидаты являются супер-ключами. |
выбор | Набор супер ключей является основой для выбора ключей-кандидатов. | Набор ключей-кандидатов формирует основу для выбора одного первичного ключа. |
подсчитывать | В отношениях есть сравнительно больше супер ключей. | Относительно меньше ключей-кандидатов в отношении. |
Определение супер ключа
супер ключ это основной Ключ любого отношения. Это определяется как ключ которые могут идентифицировать все другие атрибуты в отношении, Суперключ может быть отдельным атрибутом или набором атрибутов. Два объекта не имеют одинаковых значений для атрибутов, составляющих суперключ. В отношении есть по крайней мере один или несколько суперключей.
Минимальный супер ключ также называется ключом-кандидатом. Таким образом, мы можем сказать, что некоторые из супер-ключей проверены на то, что они являются ключом-кандидатом. Позже мы увидим, как проверяется суперключ, чтобы стать ключом-кандидатом.
Возьмем соотношение R (A, B, C, D, E, F); у нас есть следующие зависимости для отношения R, и мы проверили каждую на наличие суперключа.
Используя ключ, AB мы можем идентифицировать остальные атрибуты таблицы, т.е. CDEF, Точно так же, используя ключи CD, ABD, DF, а также DEF мы можем идентифицировать оставшиеся атрибуты таблицы R. Все это супер-ключи.Но используя ключ CB мы можем только найти значения для атрибута D а также Fмы не можем найти значение для атрибутов а также Е, Следовательно, CB это не супер ключ. То же самое в случае с ключом D мы не можем найти значения всех атрибутов в таблице, используя ключ D. Таким образом, D не является супер ключом.
Определение ключа кандидата
супер ключ это правильное подмножество другого суперключа того же отношения называется минимальный супер ключ. Минимальный супер ключ называется Ключ-кандидат, Как и супер ключ, ключ-кандидат также уникально идентифицирует каждый кортеж в таблице. Атрибут ключа кандидата может принять ЗНАЧЕНИЕ NULL ценность.
Один из ключей-кандидатов выбирается в качестве первичного ключа администратор базы данных, При условии, что значения атрибута ключа должны быть уникальными и не содержать NULL. Атрибуты ключа-кандидата называются основные атрибуты.
В приведенном выше примере мы нашли суперключи для отношения R. Теперь давайте проверим все суперключи на то, что они являются ключом-кандидатом.
Супер ключ AB правильное подмножество супер ключа ABD, Итак, когда минимальный супер ключ AB один, способен идентифицировать все атрибуты в таблице, тогда нам не нужно больше ключа ABD, Следовательно, супер ключ AB является ключом кандидата в то время как ABD будет только супер ключ.
Точно так же супер ключ DF также правильное подмножество супер ключа DEF, Так когда DF один способен идентифицировать все атрибуты в отношении, зачем нам DEF, Следовательно, супер ключ DF становится ключом кандидата в то время как DEF это только супер ключ.
Супер ключ CD не является правильным подмножеством любого другого супер ключа. Итак, мы можем сказать CD минимальный супер ключ, который идентифицирует все атрибуты в отношении Следовательно, CD является ключом кандидата.
Принимая во внимание ключ CB а также D не супер ключ, поэтому они не могут быть кандидатом даже. Просматривая таблицу выше, вы можете сделать вывод, что каждый ключ-кандидат является супер-ключом, но обратное неверно.
- Один атрибут или набор атрибутов, которые могут однозначно идентифицировать все атрибуты определенного отношения, называется Super key. С другой стороны, суперключ, который является надлежащим подмножеством другого суперключа, называется ключом-кандидатом.
- Все ключи-кандидаты являются супер-ключами, но обратное неверно.
- Набор супер ключей проверяется для поиска ключей-кандидатов, тогда как набор ключей-кандидатов проверяется для выбора одного первичного ключа.
- Суперклави сравнительно больше, чем ключей-кандидатов.
Вывод:
Супер ключ является основным ключом любого отношения. Они должны быть нанесены в первую очередь, прежде чем распознавать другие ключи для отношения, поскольку они формируют основу для других ключей. Ключ-кандидат важен, так как помогает распознать наиболее важный ключ любого отношения, являющегося первичным ключом.