프로그래밍 숲

체크 제약조건(Check Constraint)의 정의와 예시 본문

프로그래밍_인포/데이터베이스&SQL

체크 제약조건(Check Constraint)의 정의와 예시

jjscript 2023. 5. 30. 10:08
728x90
반응형

체크 제약조건(Check Constraint)

정의

체크 제약조건은 테이브에 저장된 데이터의 무결성과 유효성을 보정하는 제약 조건 중 하나입니다. 특정 열 또는 열 집합에 삽입되어 업데이트 되는 모든 데이터에 대해 충족되어야 하는 조건을 정의합니다.

 

예시로 바로 확인해보도록 하겠습니다.

예시

나이와 국가를 포함한 고객 정보를 저장하는 "CUSTOMERS"라는 테이블이 있다고 가정합니다. 검사 제약 조건을 사용하여 이 테이블에 삽입되거나 업데이트되는 데이터에 대해 특정 규칙을 적용하려고 합니다.

1. 연령 제한

"AGE" 열에 확인 제한을 정의하여 고객의 연령이 18세에서 100세 사이여야 한다는 것을 확인할 수 있습니다. 이 제약 조건은 유효하지 않은 연령 값의 삽입을 방지합니다.

CREATE TABLE CUSTOMERS (
  ID INT PRIMARY KEY,
  NAME VARCHAR(50),
  AGE INT CHECK (AGE >= 18 AND AGE <= 100),
  COUNTRY VARCHAR(50)
);

이 체크 제약조건이 있는 상태에서 수명 값이 16 또는 105인 행을 삽입하려고 하면 제약 조건 위반 오류가 발생하여 삽입이 불가능합니다.

 

2. 국가 제약

허용되는 국가 값을 특정 세트로 제한하고 싶다고 가정해 보겠습니다. "USA", "Canada" 또는 "UK"와 같은 값만 허용하도록 "COUNTRY" 열에 검사 제약 조건을 정의할 수 있습니다.

CREATE TABLE CUSTOMERS (
  ID INT PRIMARY KEY,
  NAME VARCHAR(50),
  AGE INT,
  COUNTRY VARCHAR(50) CHECK (COUNTRY IN ('USA', 'Canada', 'UK'))
);

이 체크 제약조건을 사용하면 "USA", "Canada" 또는 "UK" 이외의 국가 값을 사용하여 행을 삽입하거나 업데이트할 수 없습니다.

728x90
반응형
Comments