mun dev

[Oracle] 오라클 제약조건 (CHECK) 본문

DB/Oracle

[Oracle] 오라클 제약조건 (CHECK)

mndev 2024. 2. 7. 09:54

CHECK

  • 특정 컬럼에 지정된 데이터만 입력될 수 있도록 제한
  • 입력할 수 있는 값의 범위를 설정해 주는 제약조건
  • 입력 값이 조건에 맞지 않으면 오류 발생, 입력 값의 범위를 지정할 수 있음
create table emp6
(empno number(10),
ename varchar(20),
sal number(10) constraint emp6_sal_ck
check (sal between 0 and 6000));
  • 조건 위배시 오류 발생
update emp6 set sal = 9000 where ename = 'CLARK';

-- 9000으로 데이터를 넣으려고 해도 넣어지지 않음
insert into emp6 values(7566, 'ADMS', 9000);
insert into emp6 values(7566, 'ADMS', 9000);

CHECK 제약 수정 및 삭제

  • check 제약을 수정하려면 삭제해야 가능
alter table emp6 drop constraint emp6_sal_ck;

insert into emp6 values(7566, 'ADMS', 9000);