[sql] 데이터베이스 무결성 제약 조건

데이터베이스 무결성 제약 조건은 데이터베이스에 저장된 데이터의 정확성과 일관성을 유지하기 위한 규칙들을 말합니다. 이 조건들은 데이터의 유효성을 보장하고, 부적절한 데이터의 삽입, 갱신, 삭제를 방지하여 데이터의 신뢰성을 유지하는 데 중요한 역할을 합니다.

종류

1. 엔터티 무결성 제약 조건

CREATE TABLE departments (
  dept_id INT PRIMARY KEY,
  dept_name VARCHAR(50) NOT NULL
);

CREATE TABLE employees (
  emp_id INT PRIMARY KEY,
  emp_name VARCHAR(50) NOT NULL,
  dept_id INT,
  FOREIGN KEY (dept_id) REFERENCES departments(dept_id)
);

2. 도메인 무결성 제약 조건

CREATE TABLE employees (
  emp_id INT PRIMARY KEY,
  emp_name VARCHAR(50) NOT NULL,
  age INT CHECK (age >= 18),
  email VARCHAR(100) CHECK (email LIKE '%_@__%.__%')
);

3. 참조 무결성 제약 조건

CREATE TABLE departments (
  dept_id INT PRIMARY KEY,
  dept_name VARCHAR(50) NOT NULL
);

CREATE TABLE employees (
  emp_id INT PRIMARY KEY,
  emp_name VARCHAR(50) NOT NULL,
  dept_id INT,
  FOREIGN KEY (dept_id) REFERENCES departments(dept_id) ON UPDATE CASCADE ON DELETE CASCADE
);

중요성

무결성 제약 조건은 데이터베이스의 데이터 품질을 유지하고 데이터의 무단 변경을 방지하여 안정성을 보장합니다. 잘 정의된 무결성 제약 조건은 잘못된 데이터의 삽입 및 수정을 방지하고 데이터베이스의 무결성을 보존하는 데 도움이 됩니다.

참조: Microsoft SQL Server - 데이터베이스 무결성 제약 조건