추천, 2024

에디터의 선택

기본 키와 후보 키의 차이점

키는 특성이거나 테이블에서 튜플에 액세스하는 데 사용되는 특성 집합이거나 두 테이블 간의 관계를 구성하는 데 사용됩니다. 이 기사에서는 1 차 및 후보 키와 그 차이점에 대해 논의 할 것입니다. Primary 키와 Candidate Key는 관계 또는 테이블의 튜플을 고유하게 식별합니다. 그러나 이들을 구별하는 가장 중요한 점은 관계에 단 하나의 기본 키만 있을 수 있다는 것입니다. 그러나 관계에 하나 이상의 후보 키 가있을 수 있습니다.

초등부와 후보자 유형의 차이점은 아래 비교 차트의 도움을 받아 논의 할 것입니다.

비교 차트

비교의 근거기본 키후보 키
기본어떤 관계에서도 기본 키는 하나만있을 수 있습니다.관계에 하나 이상의 후보 키가있을 수 있습니다.
없는기본 키의 어떤 속성도 NULL 값을 포함 할 수 없습니다.후보 키의 속성은 NULL 값을 가질 수 있습니다.
지정관계에 기본 키를 지정하는 것은 선택 사항입니다.후보 키가 지정되지 않은 관계는있을 수 없습니다.
특색기본 키는 관계에 대한 가장 중요한 속성을 설명합니다.응시자 키는 1 차 키 수혜 자격이있는 응시자를 나타냅니다.
부통령기본 키는 후보 키입니다.그러나 각 후보 키가 기본 키가 될 수있는 것은 아닙니다.

기본 키의 정의

기본 키 는 관계에서 각 튜플을 고유하게 식별하는 속성 또는 속성 집합입니다. 각 관계에 대해 하나의 기본 키만있을 수 있습니다. 기본 키는 절대로 NULL 값을 포함해서는 안되며 관계의 각 튜플에 대해 고유 한 값을 가져야합니다. 기본 키의 속성 / s 값은 정적 이어야합니다. 즉, 속성의 값을 절대로 변경하지 않아야합니다.

응시자 키 중 하나가 기본 키가 될 수있는 자격을 얻습니다. 후보 키가 기본 키가되어야하는 규칙 은 키 값이 절대 NULL 이 아니어야하며 모든 튜플에 대해 고유 해야한다는 규칙 입니다.

관계에 다른 관계의 기본 키인 속성이 들어 있으면 해당 속성을 외부 키 라고 합니다 .

관계의 다른 속성을 도입하기 전에 관계의 기본 키를 알아내는 것이 좋습니다. 기본 키는 각 튜플을 고유하게 식별합니다. 단일 속성 또는 소수의 속성을 기본 키로 선택하면 관계 처리가 쉬워집니다.

이제 기본 키의 예를 살펴 보겠습니다.

 학생 {ID, 성, 성, 나이, 주소} 

여기에서는 먼저 후보 키를 찾습니다. 학생 관계에서 각 학생을 고유하게 식별하므로 두 개의 후보 키 {ID}{First_name, Last_name} 을 알아 냈습니다 . 이제는 ID 를 기본 키로 선택합니다. 두 명의 학생이 이름과 성을 동일하게 사용하기 때문에 ID가 있는 학생을 쉽게 추적 할 수 있습니다.

후보 키의 정의

후보 키 는 관계에서 하나의 튜플을 고유하게 정의하는 속성 또는 속성 집합입니다. 하나 의 관계에 하나 이상의 후보 키가 있어야합니다. 이 후보 키는 기본 키가 될 수있는 후보입니다.

각 후보 키는 기본 키가 될 수 있지만 기본 키는 하나만 선택할 수 있습니다. 후보 키가 기본 키가되어야하는 규칙은 키의 모든 도메인에서 키의 속성 값이 절대 NULL 이 될 수 없으며 고유 하고 정적 이어야합니다.

모든 후보 키가 기본 키의 자격을 갖추면 숙련 된 DBA 가 기본 키를 결정해야합니다. 후보 키가없는 관계는 결코있을 수 없습니다.

예를 들어 후보 키를 이해합시다. Student 관계에 몇 가지 속성을 추가하면 위에서 논의했습니다.

 학생 {ID, 성, 성, 나이, 주소, DOB, 부서 이름} 

여기서는 {ID}, {First_name, Last_name, DOB} 인 후보 키를 알아낼 수 있습니다. 따라서 후보 키는 관계에서 튜플을 고유하게 식별하는 키라는 것을 이해할 수 있습니다.

기본 및 후보 키의 주요 차이점

  1. 기본 키와 후보 키를 구별하는 기본 요점은 스키마의 모든 관계에 대해 하나의 기본 키만있을 수 있다는 것입니다. 그러나 단일 릴레이션에 대해 여러 후보 키가있을 수 있습니다.
  2. 기본 키의 주 기능은 관계에있는 레코드를 고유하게 식별하는 것이므로 기본 키 아래의 속성에는 NULL 값을 포함 할 수 없습니다. 기본 키조차도 다른 관계에서 외래 키로 사용될 수 있으므로 참조 관계가 참조 된 관계에서 튜플을 찾을 수 있도록 NULL이 아니어야합니다. 속성 제한이 널 (null)이 아닌 경우 후보 키는 NULL이 될 수 있습니다.
  3. 기본 키를 지정하는 것은 선택 사항이지만 후보 키가없는 관계는있을 수 없습니다.
  4. 기본 키는 관계의 고유하고 가장 중요한 속성을 설명하는 반면, 후보 키는 후보 중 하나를 기본 키로 선택할 수있는 후보를 제공합니다.
  5. 모든 기본 키는 후보 키이지만 반대의 경우는 사실이 아닙니다.

결론:

릴레이션이 기본 키를 지정하는 것은 선택 사항입니다. 반면에 릴레이션을 선언하는 경우에는 좋은 관계를 구성하기 위해 후보 키가 그 관계에 있어야합니다.

Top