[sql] 제약 조건의 종류와 설정 방법

데이터베이스에서 제약 조건(Constraints)은 데이터의 무결성을 유지하기 위해 사용됩니다. 제약 조건은 데이터에 대한 규칙을 정의하고, 해당 규칙에 맞지 않는 데이터의 입력 및 수정을 방지합니다.

제약 조건의 종류

  1. 주요 제약 조건(Primary Key Constraint): 테이블의 각 행을 고유하게 식별하기 위한 필드를 지정합니다.
CREATE TABLE employees (
    employee_id INT PRIMARY KEY,
    employee_name VARCHAR(50),
    employee_email VARCHAR(100)
);
  1. 고유 제약 조건(Unique Constraint): 테이블의 각 행에 대해 유일해야 하는 필드를 정의합니다.
CREATE TABLE products (
    product_id INT,
    product_name VARCHAR(50),
    CONSTRAINT unique_product_name UNIQUE (product_name)
);
  1. 외래 키 제약 조건(Foreign Key Constraint): 다른 테이블의 기본 키와 관련된 필드에 대한 참조 무결성을 유지합니다.
CREATE TABLE orders (
    order_id INT PRIMARY KEY,
    product_id INT,
    CONSTRAINT fk_product FOREIGN KEY (product_id) REFERENCES products(product_id)
);
  1. 체크 제약 조건(Check Constraint): 데이터 입력시 특정 조건을 충족해야 하는 필드에 대한 규칙을 정의합니다.
CREATE TABLE employees (
    employee_id INT,
    employee_age INT,
    CONSTRAINT check_employee_age CHECK (employee_age >= 18)
);

제약 조건 설정 방법

SQL에서는 CREATE TABLE 문을 사용하여 테이블을 생성하면서 제약 조건을 명시할 수 있습니다. 또는 ALTER TABLE 문을 사용하여 이미 존재하는 테이블에 제약 조건을 추가할 수도 있습니다.

ALTER TABLE employees
ADD CONSTRAINT pk_employee_id PRIMARY KEY (employee_id);

제약 조건은 데이터베이스의 무결성을 유지하고, 데이터의 정확성과 일관성을 보장하는 데 중요한 역할을 합니다.적절한 제약 조건을 설정하여 안정적인 데이터베이스를 유지할 수 있습니다.