>  기사  >  웹 프론트엔드  >  SQL의 키 | 기본 키 | 외래 키| 후보 키|복합 키 |대체 키|수퍼 키|대리 키| 고유 키

SQL의 키 | 기본 키 | 외래 키| 후보 키|복합 키 |대체 키|수퍼 키|대리 키| 고유 키

Linda Hamilton
Linda Hamilton원래의
2024-10-02 14:19:01460검색

Keys in SQL | Primary Key | Foreign Key| Candidate Key|Composite Key |Alternate Key|Super Key|Surrogate Key| Unique Key

SQL에서 키는 테이블의 행을 고유하게 식별하고, 테이블 간의 관계를 적용하고, 데이터 무결성을 유지하는 데 사용됩니다. 다양한 유형의 키가 있으며 각각 특정 목적을 수행합니다. 다음은 간단한 예를 들어 다양한 키를 분석한 것입니다.

  1. 기본 키

기본 키는 테이블의 각 레코드를 고유하게 식별합니다. NULL 값을 가질 수 없으며, 테이블당 기본 키는 하나만 있을 수 있습니다.

예:

학생 테이블 만들기(
StudentID INT PRIMARY KEY, -- 기본 키
이름 VARCHAR(50),
나이 INT
);

여기서 StudentID는 기본 키입니다. 즉, 각 StudentID 값은 고유하고 null이 아니어야 합니다.


  1. 외래 키

외래 키는 두 테이블 간의 관계를 생성하는 열(또는 열 집합)입니다. 다른 테이블의 기본 키를 가리키며 참조 무결성을 적용합니다.

예:

CREATE TABLE 강좌(
CourseID INT PRIMARY KEY, -- 기본 키
강좌명 VARCHAR(50)
);

테이블 등록 만들기(
등록ID INT PRIMARY KEY,
학생ID INT,
CourseID INT,
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID) -- 외래 키
);

여기서 Enrollments 테이블의 CourseID는 Courses 테이블의 CourseID를 참조하는 외래 키입니다.


  1. 후보키

후보 키는 테이블의 행을 고유하게 식별할 수 있는 열(또는 열 집합)입니다. 테이블에는 여러 개의 후보 키가 있을 수 있지만 그 중 하나만 기본 키로 선택됩니다.

예:

CREATE TABLE 직원(
EmployeeID INT, -- 후보 키
이메일 VARCHAR(100), -- 후보 키
이름 VARCHAR(50),
기본 키(EmployeeID) - 기본 키로 선택됨
);

이 테이블에서 EmployeeID와 Email은 모두 행을 고유하게 식별할 수 있으므로 후보 키입니다. 그러나 EmployeeID가 기본 키로 선택됩니다.


  1. 복합 키

복합 키는 두 개 이상의 열로 구성된 기본 키이며, 이 열이 함께 테이블의 행을 고유하게 식별합니다.

예:

테이블 주문 만들기(
주문ID INT,
제품ID INT,
수량 INT,
기본 키(OrderID, ProductID) -- 복합 키
);

여기에서는 OrderID와 ProductID가 모두 복합 키를 형성합니다. 두 행에 동일한 OrderID와 ProductID 조합이 있을 수 없습니다.


  1. 대체 키

대체 키는 기본 키로 선택되지 않은 후보 키입니다.

예:

테이블 차량 만들기(
VehicleID INT, -- 기본 키
LicensePlate VARCHAR(50), -- 대체 키
소유자이름 VARCHAR(50),
기본 키(차량 ID)
);

여기서 LicensePlate는 후보키이지만 기본키가 아니므로 대체키입니다.


  1. 고유키

고유 키는 열 또는 열 집합의 모든 값이 서로 구별되도록 보장합니다. 기본 키와 달리 고유 키는 NULL 값을 가질 수 있습니다.

예:

테이블 사용자 생성(
사용자 ID INT 기본 키,
이메일 VARCHAR(100) UNIQUE, -- 고유 키
사용자 이름 VARCHAR(50)
);

여기서 이메일은 두 명의 사용자가 동일한 이메일 주소를 갖지 않도록 하는 고유 키이지만 원하는 경우 NULL 값을 허용할 수 있습니다.


  1. 슈퍼키

수퍼 키는 테이블의 행을 고유하게 식별할 수 있는 하나 이상의 열 집합입니다. 후보 키는 최소 슈퍼 키입니다(즉, 고유성 속성을 잃지 않고는 열을 제거할 수 없습니다).

예:

직원 테이블:

(EmployeeID, Email) -- 슈퍼 키(EmployeeID와 Email을 함께 사용하여 행을 고유하게 식별할 수 있음)

EmployeeID, Email 단독 또는 둘 다와 같이 행을 고유하게 식별할 수 있는 모든 조합은 슈퍼 키로 간주될 수 있습니다.


  1. 대리 키

대리 키는 테이블의 고유 식별자로 사용되는 인공 키입니다. 실제 의미가 없는 자동 증가 정수와 같은 시스템 생성 값인 경우가 많습니다.

예:

테이블 주문 만들기(
OrderID INT AUTO_INCREMENT, -- 대리 키
제품명 VARCHAR(50),
수량 INT,
기본 키(주문 ID)
);

여기서 OrderID는 직접적인 비즈니스 의미 없이 일반적으로 데이터베이스 시스템에 의해 생성되는 대리 키입니다.


키 요약:

이러한 각 키는 데이터 무결성과 효율적인 쿼리를 보장하는 잘 구조화된 데이터베이스를 설계하는 데 중요한 역할을 합니다.

위 내용은 SQL의 키 | 기본 키 | 외래 키| 후보 키|복합 키 |대체 키|수퍼 키|대리 키| 고유 키의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.