기본 키와 고유 키의 차이점
기본 키와 고유 키의 주요 차이점
- 테이블에는 하나의 기본 키가 있을 수 있지만 테이블에는 여러 개의 고유 키가 있을 수 있습니다.
- 기본 키의 목적은 엔터티 무결성을 강화하는 것입니다. 반면에 고유 키의 목적은 고유 데이터를 적용하는 것입니다.
- 기본 키에서는 기본 인덱스가 클러스터링되고 고유 키에서는 기본 인덱스가 클러스터링되지 않습니다.
- 기본 키는 널 열을 허용하지 않지만 고유 키는 널 열을 허용합니다.
- 기본 키에서는 중복 키가 허용되지 않지만 고유 키에서는 하나 이상의 키 부분이 null인 경우 중복 키가 허용됩니다.

여기에서는 기본 키와 고유 키의 차이점을 분석하고 장단점을 종합적으로 평가하겠습니다.
기본 키란 무엇입니까?
기본 키 제약 조건은 해당 테이블의 모든 행을 고유하게 식별하는 테이블의 열 또는 열 그룹입니다. 기본 키는 중복될 수 없습니다. 즉, 동일한 값이 테이블에 두 번 이상 나타날 수 없습니다.
테이블에는 기본 키가 하나만 있을 수 있습니다. 기본 키 열 또는 테이블 수준에서 정의할 수 있습니다. 복합 기본 키를 생성하는 경우 테이블 수준에서 정의해야 합니다.
기본 키 생성 예
다음 예는 student라는 테이블이 있다고 설명합니다. 여기에는 1개의 속성이 있습니다: 2) StudID, 3) Roll No., 4) First Name, 5) Last Name, XNUMX) Email.
Roll No 속성은 중복되거나 Null 값을 포함할 수 없습니다. 이는 대학에 등록한 모든 학생이 고유한 롤 번호를 가질 수 있기 때문입니다. 학생의 롤 번호로 테이블의 각 행을 쉽게 식별할 수 있습니다. 따라서 기본 키로 간주됩니다.

기본 키의 특징
내 관찰에 따르면 기본 키의 중요한 기능은 다음과 같습니다.
- 기본 키는 테이블의 엔터티 무결성을 구현합니다.
- 테이블에는 기본 하나만 유지할 수 있습니다.
- 기본 키에는 하나 이상의 테이블 열이 포함되어 있습니다.
- 열이 null이 아닌 것으로 정의되었습니다.
기본 키를 사용하는 이유는 무엇입니까?
내 실제 지식을 반영하여 기본 키를 사용하는 중요한 이유는 다음과 같습니다.
- 기본 키의 주요 목적은 데이터베이스 테이블의 모든 레코드를 식별하는 것입니다.
- 다른 사람이 Null 값을 입력하는 것을 허용하지 않을 때 기본 키를 사용할 수 있습니다.
- 레코드를 삭제하거나 업데이트하는 경우 데이터베이스 데이터 무결성을 보장하기 위해 지정한 작업이 수행됩니다.
- 부모 테이블에 대한 삭제 또는 업데이트 작업을 거부하려면 제한 작업을 수행합니다.
- DBMS 테이블을 물리적으로 구성할 때마다 데이터는 클러스터형 인덱스의 순서로 구성됩니다.
고유 키란 무엇입니까?
고유 키는 데이터베이스 레코드를 고유하게 식별하는 테이블에 있는 하나 이상의 필드 또는 열 그룹입니다.
고유 키는 기본 키와 동일하지만 테이블 열에 하나의 Null 값을 허용할 수 있습니다. 또한 동일한 값을 포함할 수 없습니다. 고유 제약 조건은 다른 테이블의 외래 키로 참조됩니다.
고유 키 생성 예
다음 속성을 가진 동일한 학생 테이블을 생각해 보세요: 1) 학생 ID, 2) 학생 번호, 3) 이름, 4) 성, 5) 이메일.
Stud ID에는 대학의 각 학생이 고유한 ID 번호가 있어야 하므로 Stud ID 열의 항목이 고유할 수 있는 고유 제약 조건이 있을 수 있습니다. 대학을 옮기는 경우에는 학생증이 없습니다. 고유 키 제약 조건에는 하나의 null만 허용되므로 항목에는 null 값이 있을 수 있습니다.

고유키의 특징
여기서는 고유 키의 중요한 기능을 간략히 설명하겠습니다.
- 테이블에 둘 이상의 고유 키를 정의할 수 있습니다.
- 기본적으로 고유 키는 비클러스터형 고유 인덱스에 있습니다.
- 하나 이상의 테이블 열로 구성됩니다.
- 테이블 열은 Null일 수 있지만 열당 하나의 Null만 사용하는 것이 좋습니다.
- 고유 제약 조건은 외래 키 제약 조건으로 쉽게 참조될 수 있습니다.
고유 키를 사용하는 이유는 무엇입니까?
고유 키 사용을 권장하는 중요한 이유는 다음과 같습니다.
- 고유 키의 목적은 각 테이블 레코드에 대한 열의 정보가 고유한지 확인하는 것입니다.
- 사용자가 null 값을 입력하도록 허용하는 경우.
- 고유 키 기본적으로 비클러스터형 인덱스를 생성하기 때문에 사용됩니다.
- 열에 Null 값을 유지해야 하는 경우 고유 키를 사용할 수 있습니다.
- 테이블의 하나 이상의 필드/열이 데이터베이스 테이블의 레코드를 고유하게 식별하는 경우.
기본 키와 고유 키의 차이점
내 분석에 따르면 기본 키와 고유 키의 주요 차이점은 다음과 같습니다.
| 비교 기준 | 기본 키 | 고유 키 |
|---|---|---|
| 키 수 | 테이블에는 하나의 기본 키가 있을 수 있습니다. | 테이블에는 여러 개의 고유 키가 있을 수 있습니다. |
| NULL | null 열은 허용되지 않습니다. | null 열을 허용합니다. |
| 색인 | 기본 인덱스는 클러스터링됩니다 | 기본 인덱스는 클러스터링되지 않음 |
| 목적 | 기본 키의 목적은 엔터티 무결성을 강화하는 것입니다. | 고유 키의 목적은 고유한 데이터를 적용하는 것입니다. |
| 데이터베이스 테이블의 각 레코드나 행을 고유하게 식별할 수 있는 SQL 제약 조건입니다. | 데이터베이스 테이블에 있는 두 개의 분리된 레코드에 동일한 값을 할당하는 것을 허용하지 않는 SQL 제약 조건입니다. | |
| 값 수정 | 기본 키에는 중복 키가 허용되지 않습니다. | 고유 키에서 하나 이상의 키 부분이 null이면 중복 키가 허용됩니다. |
| 통사론 |
기본 키는 다음 구문을 사용하여 생성할 수 있습니다. CREATE TABLE Employee ( ID int PRIMARY KEY, Name varchar(255), City varchar(150) ) |
고유 키는 다음 구문을 사용하여 생성할 수 있습니다. CREATE TABLE Employee ( ID int UNIQUE. Name varchar(255) NOT NULL. City varchar(150) ) |
다음을 탐색할 수도 있습니다. 기본 키와 외래 키의 차이점
기본 키와 고유 키 중에서 선택하는 방법
- 중복이 포함되어서는 안 되는 열이 있을 때 고유 키가 더 좋습니다.
- 기본 키는 테이블에 null을 유지할 수 없는 경우에 이상적입니다. 관계를 생성하기 위해 다른 테이블에 외래 키가 있는 경우에도 사용할 수 있습니다.

