데이터베이스

제약조건

야생늑대 2022. 4. 20. 17:18
반응형

데이터 무결성이란?

  • 데이터 무경설(data integrity)은 데이터베이스에 저장되는 데이터의 정확성과 일관성을 보장한다는 의미이며, 이를 위해 항상 유지해야 하는 기본 규칙을 가지고 있다. 
  • 제약조건은 이러한 데이터 무결성을 지키기위한 안전장치로서 잘못된 데이터의 입력이나 수정, 삭제 등 모든 과정으로부터 무결성을 보장한다.
종류 설명
영역 무결성
(domain integrity)
열에 저장되는 값의 적정 여부를 확인. 정해 놓은 범위를 만족하는 데이터임을 규정.
개체 무결성
(entity integrity)
테이블 데이터를 유일하게 식별할 수 있는 기본키(primary key)는 반드시 값을 가지고 있어야하며 NULL이 될 수 없고 중복될 수도 없음을 규정.
참조 무결성
(referential integrity)
참조테이블의 외래키값은 참조테이블의 기본키로서 존재해야하며 NULL이 가능
기본키와 외래키 간의 관계가 항상 유지됨을 보장

제약조건이란?

  • 테이블의 특정 열에 지정하며, 제약조건을 지정한 열에 제약조건에 부합하지 않는 데이터를 저장할 수 없다.
  • 제약 조건 지정 방식에 따라 기존 데이터의 수정이나 삭제 가능 여부도 영향을 받는다.
  • 제약조건은 테이블을 생성할 때 주로 지정하지만 테이블 생성 후에도 추가,변경,삭제할 수 있다. 
  • 제약조건은 데이터 정의어(DDL)에서 활용한다.
종류 설명
NOT NULL 지정한 열에 NULL을 허용하지 않는다. NULL을 제외한 데이터의 중복은 허용
UNIQUE 지정한 열이 유일한 값을 가져야 한다. 즉, 중복될 수 없다. 단 NULL은 값의 중복에서 제외된다.
PRIMARY KEY 지정한 열이 유일한 값이면서 NULL을 허용하지 않는다. PRIMARY KEY는 테이블에 하나만 지정가능하다.
FOREIGN KEY 다른 테이블의 열을 참조하여 존재하는 값만 입력할 수 있다.
CHECK 설정한 조건식을 만족하는 데이터만 입력 가능하다.

 

반응형