ㅏ 후보 키 다음과 같은 키의 일부입니다. 슈퍼 키 ( 이전 섹션에서 논의한 ), 여기서 슈퍼 키는 테이블을 고유하게 식별할 수 있는 모든 속성의 슈퍼 세트입니다.
여기서는 후보키와 그 역할, 용도에 대해 알아보겠습니다. 또한 후보 키의 개념을 더 잘 이해할 수 있도록 몇 가지 예를 살펴보겠습니다.
문자를 int로 자바
후보 키란 무엇입니까?
후보 키는 중복 속성을 포함하지 않는 키가 다름 아닌 슈퍼 키 세트의 하위 집합입니다. 후보 키 . 슈퍼 키 집합에서 후보 키를 선택하려면 슈퍼 키 집합을 살펴봐야 합니다.
후보 키의 역할
후보 키의 역할은 테이블 행이나 열을 고유하게 식별하는 것입니다. 또한 후보 키의 값은 Null일 수 없습니다. 전문가에 따르면 후보 키에 대한 설명은 '중복 속성이 없음'이며 '튜플의 최소한의 표현'입니다.
후보 키가 기본 키와 다른 점
후보 키와 기본 키의 목적은 동일하지만 튜플을 고유하게 식별하는 것이며 서로 다릅니다. 테이블에는 하나 이상의 후보 키가 있을 수 있지만 테이블에 대한 기본 키는 하나만 생성할 수 있기 때문입니다. 따라서 획득한 후보 키의 수로부터 적절한 기본 키를 식별할 수 있습니다. 그러나 테이블에 후보 키가 하나만 있는 경우 두 키 제약 조건 모두에 대해 고려할 수 있습니다.
후보 키의 예
후보 키의 작동을 이해하기 위해 슈퍼 키를 논의할 때 사용한 것과 동일한 예를 살펴보겠습니다.
문자를 int로 자바
우리는 EMPLOYEE_DETAIL 다음과 같은 속성이 있는 테이블입니다.
Emp_SSN: SSN 번호가 이 필드에 저장됩니다.
Emp_Id: 사원 식별 번호 값을 저장하는 속성입니다.
문자열을 int로 자바
Emp_name: 지정된 직원 ID를 보유한 직원의 이름을 저장하는 속성입니다.
Emp_email: 지정된 직원의 이메일 ID를 저장하는 속성입니다.
그만큼 EMPLOYEE_DETAIL 아래 표는 이해를 돕기 위해 제공됩니다.
따라서 위 표에서 아래 주어진 슈퍼 키를 얻었습니다(이전 섹션에서 설명함).
이제 이러한 슈퍼 키 세트에서 후보 키를 결론 내릴 수 있습니다. 후보 키를 고르기 위해서는 기본 키를 최대한 분석하고 형성하는 것이 가장 좋은 방법입니다. 따라서 전체 테이블을 식별할 수 있는 슈퍼 키 세트에서 해당 세트를 식별해야 합니다. 또는 테이블의 다른 속성을 식별할 수 있습니다. 따라서 결과는 다음과 같습니다.
따라서 이들은 테이블의 다른 비프라임 속성을 식별할 수 있는 세 가지 속성을 얻습니다. 이 모든 것이 후보 키이며, 이 중에서 테이블의 모든 레코드를 쉽게 식별할 수 있는 가장 적절한 속성을 선택할 수 있으며, 이를 기본 키라고 설명합니다.
후보 키와 슈퍼 키의 차이점
위의 논의에서 다음과 같은 차이점을 알 수 있습니다.
산업과 공장
슈퍼 키 | 후보 키 |
---|---|
이는 테이블을 고유하게 식별할 수 있는 모든 속성의 상위 집합입니다. | 이는 슈퍼 키의 하위 집합 또는 일부입니다. |
모든 슈퍼 키가 후보 키여야 하는 것은 전혀 필수가 아닙니다. | 반면에 모든 후보 키는 슈퍼 키입니다. |
슈퍼 키 속성은 NULL일 수 있습니다. 이는 해당 값이 null일 수 있음을 의미합니다. | 후보 키를 보유하는 속성은 NULL이 될 수 없습니다. 즉, 해당 값은 null이 될 수 없습니다. |
모든 슈퍼키가 모여서 후보키를 가져옵니다. | 마찬가지로 후보 키를 모아서 기본 키를 만듭니다. |
형성된 슈퍼 키의 수는 항상 더 많이 보입니다. | 여기서 후보 키는 슈퍼 키보다 작습니다. |
따라서 슈퍼키는 슈퍼집합, 후보키는 부분집합, 기본키는 슈퍼키의 하위집합이다.