데이터 무결성을 위한 제약 조건

RNR·2022년 11월 1일
0

SQL

목록 보기
11/17

데이터 무결성

Business Rule!

데이터 무결성 제약 조건

테이블에 부적절한 자료가 입력되는 것을 방지하기 위하여
테이블을 생성할 때, 각 컬럼에 대해서 정의하는 여러가지 규칙

  • 무결성: 데이터 베이스 내에 데이터의 정확성을 유지하는 것
  • 제약조건: 바람직하지 않은 데이터가 저장되는 것을 방지

무결성 제약 조건의 종류

  1. NOT NULL : NULL을 허용하지X
  2. UNIQUE : 중복된 값을 허용X
  3. PRIMARY KEY : NULL과 중복된 값을 허용X (NOT NULL + UNIQUE)
  4. FOREIGN KEY : 참조되는 테이블에서 컬럼의 값이 존재하면 허용
  5. CHECK : 저장 가능한 데이터 값의 범위나 조건을 지정, 설정한 값만을 허용

- NOT NULL

NOT NULL 제한 조건은 해당 컬럼에 데이터를 추가하거나 수정할 때, NULL 값이 저장되지 않게 제약을 걸어줌.
정보를 입력할 때 반드시 입력해야하는, 픽수 입력을 요구하는 컬럼에게 지정.

- UNIQUE

UNIQUE 제약 조건은 특정 컬럼에 대해 자료가 중복되지 않게 함.
지정된 컬럼에는 유일한 값이 수록되게 하는 것.
EX) 사원번호, 학번 ...

❗ NULL값은 예외로 간주한다. 그러니 NULL 값마저도 제한하려면, 테이블 생성시 NOT NULL과 함께 지정할 것.

- PRIMARY KEY

유일 키 제약 조건을 지정한 컬럼은 중복된 데이터를 저장하지는 못하지만, null 값을 저장하는게 가능하다.
해당 행을 다른 행과 구분할 수 있도록 하는 컬럼.

- FOREIGN KEY

참조 무결성
외래 키 제약조건은 자식 테이블의 컬럼에, 부모 테이블의 컬럼을 부모 키로 설정 하는 것.
주의 할 점 : 부모 키가 되기 위한 컬럼은 반드시 부모 테이블의 기본 키(PRIMARY KEY)나 유일키(UNIQUE)로 설정되어 있어야 한다

- CHECK

입력되는 값을 체크, 설정된 값 이외의 값이 들어오면 오류메시지와 함께 명령이 수행되지 못하게 하는 것.
조건으로 데이터 값의 범위나 특정 패턴의 숫자/문자 값을 설정할 수 있음.

- DEFAULT 제약 조건

아무런 값을 입력하지 않았을 때, 디폴트 값으로 입력되도록 지정하고 싶을 때 사용.
TABLE varchar2(13) default 'something'

컬럼 레벨로 제약조건 이름을 명시하여 제약조건 설정

column_name data_type CONSTRAINT constraint_name constraint_type
CONSTRAINT 라는 키워드와 함께 제약조건 명을 기술한다.

CASCADE

profile
개인적 공부 기록. 그때그때 메모합니다.

0개의 댓글