ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 제약조건
    SQL 2020. 2. 7. 20:43

    제약조건 설정 방법

    1. 테이블을 생성하면서 컬럼에 기술

     

    2. 테이블을 생성하면서 컬럼 기술 이후에 별도로 제약조건을 기술

     

    3. 테이블 생성과 별도로, 추가적으로 제약조건을 추가


    제약조건

     - 데이터가 무결성을 지키도록 하기위한 설정

     

     제약조건 종류

     

    1. UNIQUE 제약조건

     

     - 해당 컬럼의 값이 다른 행의 데이터와 중복되지 않도록 제약

        ex) 같은 사번의 사원들은 존재 할 수 없다.

     

    2. NOT NULL 제약조건

     

     - 해당 컬럼에 값이 반드시 존재해야 한다.

     

       ex) 사번 칼럼 - 사번 컬럼  NULL인 사원은 존재 할 수 없다.

            회원 가입시 필수 입력사항 등

     - CHECK 제약 조건에 포함되지만 사용빈도가 높다보니 간편한 형태 제공

     

    3. PIRMARY KEY 제약조건

     

     - UNIQUE + NOT NULL 조건

       ex) 사번이 같은 사원이 있을 수 없고, 사번이 없는 사람이 있을 수 없다.

     

     - PRIMARY KEY 제약 조건을 생성할 경우, 해당 컬럼으로 UNIQUE INDEX가 생성된다.

     

    (컬럼에 제약조건 기술 방법)

     

     

    4. FOREIGN KEY 제약조건

     

     - 해당 칼럼이 존재하는 다른 테이블에 값이 존재하는 행이 있어야 한다.

     

        ex) emp 테이블의 deptno컬럼이 dept테이블의 deptno컬럼을 참조(관계)
              emp 테이블의 deptno컬럼에는 dept 테이블이 존재하지 않는 부서번호가 입력 될 수 없다.
              만약, dept 테이블의 부서번호가 10, 20, 30, 40번만 존재할 경우
              emp 테이블에 새로운 행을 추가하면서 부서번호 값을 99번으로 등록할 경우 행 추가가 실패한다.

     

    5. CHECK 제약조건

     

     - 컬럼안에 들어 올 수 있는 값을 체크 해줌

     

       ex) emp 테이블의 JOB 컬럼에 들어 올 수 있는 값을 'SALESMAN', 'PRESIDENT', 'CLEARK'로 설정하면 

            이 세개 문자열만 들어 올 수 있음

     

     

     

     

     

    'SQL' 카테고리의 다른 글

    CTAS (Create Table AS)  (0) 2020.02.10
    제약조건 생성시 옵션  (0) 2020.02.10
    데이터 타입.  (0) 2020.02.07
    데이터 타입  (0) 2020.02.07
    DDL (Data Definition Language)  (0) 2020.02.07

    댓글

Designed by Tistory.