여기서는 CHECK와 DEFAULT 제약 조건을 사용하여 테이블을 생성하고 데이터를 삽입하는 방법에 대해 설명드리겠습니다.
-- ck_Test 테이블 생성, age 컬럼에 CHECK 제약 조건 설정
CREATE TABLE ck_Test(
NAME VARCHAR(10) NOT NULL,
age NUMBER(2) NOT NULL
CHECK (age BETWEEN 20 AND 30) -- age 값은 20에서 30 사이만 허용
);
-- 데이터 삽입 시 CHECK 제약 조건에 따라 유효성 검사
insert into ck_Test values('aa', 22); -- 유효
insert into ck_Test values('bb', 30); -- 유효
insert into ck_Test values('cc', 55); -- 무효: age 값이 20에서 30 사이가 아님
insert into ck_Test values('dd', 12); -- 무효: age 값이 20에서 30 사이가 아님
insert into ck_Test values('ee', 44); -- 무효: age 값이 20에서 30 사이가 아님
-- 테이블 내용 확인
SELECT * FROM ck_Test;

나이가 20에서 30 사이가 아니라서 들어가지 않는다.
-- de_Test 테이블 생성, addr 컬럼에 DEFAULT 제약 조건 설정
CREATE TABLE de_Test(
NAME VARCHAR(10) NOT NULL,
addr VARCHAR(10) DEFAULT '서울' -- addr 값이 지정되지 않을 경우 기본값 '서울' 사용
);
-- 데이터 삽입 시 DEFAULT 제약 조건 사용 예제
insert into de_Test values('KIM', ''); -- addr 값이 ''이므로 기본값 '서울'로 삽입됨
insert into de_Test values('KIM', DEFAULT); -- DEFAULT 키워드 사용하여 기본값 '서울'로 삽입됨
insert into de_Test(NAME) values('LEE'); -- addr 값을 지정하지 않아도 기본값 '서울'로 삽입됨
-- 테이블 내용 확인
SELECT * FROM de_Test;

age 컬럼에 CHECK (age BETWEEN 20 AND 30)을 설정하여, age 값이 20에서 30 사이만 허용되도록 제약 조건을 정의합니다.addr 컬럼에 DEFAULT '서울'을 설정하여, 데이터 삽입 시 addr 값을 지정하지 않으면 기본적으로 '서울'로 설정되도록 합니다.DEFAULT 키워드를 직접 사용하여 기본값을 명시적으로 삽입할 수 있습니다.DEFAULT 키워드를 사용하여 기본값을 명시적으로 삽입할 수 있습니다.age 값이 20에서 30 사이가 아닌 경우).