추천, 2024

에디터의 선택

수퍼 키와 후보 키의 차이점

키는 모든 관계형 데이터베이스의 핵심 요소입니다. 릴레이션에서 각 튜플을 고유하게 식별합니다. 또한 키는 스키마의 테이블간에 관계를 설정하는 데 사용됩니다. 이 기사에서는 슈퍼 키와 후보 키인 모든 데이터베이스의 두 가지 기본 키에 대해 설명합니다. 모든 후보 키는 슈퍼 키이지만 모든 슈퍼 키는 후보 키일 수도 아닐 수도 있습니다. 수퍼 키와 후보 키 사이에는 많은 다른 구별되는 요소가 있습니다. 이에 대해서는 아래의 비교 차트에서 간단히 설명했습니다.

비교 차트

비교의 근거수퍼 키후보 키
기본관계의 모든 속성을 고유하게 식별하는 단일 속성 또는 속성 세트는 수퍼 키입니다.수퍼 키이기도 한 수퍼 키의 적절한 하위 집합이 후보 키입니다.
다른 하나모든 수퍼 키가 후보 키가 될 수있는 것은 아닙니다.모든 후보 키는 수퍼 키입니다.
선택슈퍼 키 세트는 후보 키 선택을위한 기초를 형성합니다.후보 키 세트는 단일 기본 키 선택을위한 기초를 형성합니다.
카운트상대적으로 수퍼 키가 더 많습니다.비교적 관계가 적은 후보 키가 있습니다.

슈퍼 키의 정의

슈퍼 키 는 모든 관계의 기본 키입니다. 관계에있는 다른 모든 속성을 식별 할 수 있는 키로 정의됩니다. 수퍼 키는 단일 속성 또는 속성 세트 일 수 있습니다. 두 엔티티에는 수퍼 키를 구성하는 속성에 대해 동일한 값이 없습니다. 하나 이상의 슈퍼 키가 관계에 적어도 하나 이상 있습니다.

최소 수퍼 키는 후보 키라고도합니다. 그래서 우리는 수퍼 키 중 일부가 후보 키가되는지 검증 할 수 있다고 말할 수 있습니다. 슈퍼 키가 후보 키가되는 방법을 나중에 확인합니다.

관계 R (A, B, C, D, E, F)을 취해 봅시다. 우리는 릴레이션 R에 대해 다음과 같은 의존성을 가지고 있으며, 우리는 각각 슈퍼 키인 것을 확인했습니다.

AB를 사용하여 테이블의 특성 즉 CDEF 를 식별 할 수 있습니다. 마찬가지로 키 CD, ABD, DFDEF 를 사용하여 테이블 R의 나머지 속성을 식별 할 수 있습니다. 따라서이 모든 것이 수퍼 키입니다.

그러나 핵심 CB를 사용하여 우리는 속성 DF 에 대한 값만 찾을 수 있습니다. 속성 AE에 대한 값을 찾을 수 없습니다. 따라서 CB 는 슈퍼 키가 아닙니다. 키 D를 사용 하는 경우도 키 D 를 사용하는 테이블의 모든 속성 값을 찾을 수 없습니다. 따라서 D는 수퍼 키가 아닙니다.

후보 키의 정의

같은 관계의 다른 수퍼 키의 적절한 하위 집합 인 수퍼 키를 최소 수퍼 키 라고합니다. 최소 수퍼 키는 후보 키 라고 합니다 . 슈퍼 키와 마찬가지로 후보 키는 테이블의 각 튜플을 고유하게 식별합니다. 후보 키의 속성은 NULL 값을 허용 할 수 있습니다.

후보 키 중 하나가 DBA에 의해 기본 키로 선택됩니다. 단, 키 속성 값은 고유해야하며 NULL을 포함하지 않아야합니다. 후보 키의 속성을 프라임 속성 이라고 합니다 .

위의 예에서는 릴레이션 R에 대한 수퍼 키를 찾았습니다. 이제 수퍼 키를 모두 확인해 봅시다.

슈퍼 키 AB 는 슈퍼 키 ABD 의 적절한 하위 집합입니다. 따라서 최소한의 슈퍼 키 AB 만으로 테이블의 모든 속성을 식별 할 수 있다면 더 큰 키 ABD 가 필요하지 않습니다. 따라서 수퍼 키 AB 는 후보 키이고 ABD 는 수퍼 키입니다.
유사하게, 슈퍼 키 DF 는 또한 슈퍼 키 DEF 의 적절한 서브 세트이다. 따라서 DF 가 관계의 모든 속성을 식별 할 수있는 경우 왜 DEF 가 필요한 것입니까? 따라서 수퍼 키 DF 는 후보 키가되고 DEF 는 수퍼 키입니다.

수퍼 키 CD 는 다른 수퍼 키의 적절한 하위 집합이 아닙니다. 그래서 우리는 CD 가 릴레이션의 모든 속성을 식별하는 최소 수퍼 키라고 말할 수 있습니다. 따라서 CD 는 후보 키입니다.

CBD 는 수퍼 키가 아니기 때문에 후보 키가 될 수 없습니다. 위 표를 보면 각 후보 키가 수퍼 키이지만 그 역이 참이 아니라고 결론 내릴 수 있습니다.

수퍼 키와 후보 키의 주요 차이점

  1. 특정 관계의 모든 속성을 고유하게 식별 할 수있는 단일 속성 또는 속성 세트를 수퍼 키라고합니다. 한편, 다른 수퍼 키의 적절한 하위 집합 인 수퍼 키를 후보 키라고합니다.
  2. 모든 후보 키는 수퍼 키이지만 역이 참이 아닙니다.
  3. 슈퍼 키 세트는 후보 키를 찾기 위해 검증되는 반면, 후보 키 세트는 단일 기본 키를 선택하도록 검증됩니다.
  4. 슈퍼 키는 후보 키보다 상대적으로 더 많습니다.

결론:

슈퍼 키는 어떤 관계의 기본 키입니다. 관계에 대한 다른 키가 다른 키의 기초를 형성 할 때이를 인식하기 전에 먼저 그려야합니다. 후보 키는 기본 키인 관계의 가장 중요한 키를 인식하는 데 도움이되므로 중요합니다.

Top