Programming/기초 지식

SQL 제약조건

728x90

목차

     


     

    2021.12.08 - [Programming/기초 지식] - SQL의 개념과 T-SQL

     

    SQL의 개념과 T-SQL

    목차 2021.12.07 - [Programming/기초 지식] - 관계형 데이터 모델 관계형 데이터 모델 목차 1. 관계형 데이터 모델의 구조와 연산 1.1. 데이터 모델 구조 데이터의 구조 정적 성질, 개체 타입과 이들간의

    montoo.tistory.com

     

    1. 제약조건

    1.1. 데이터 무결성

    • NOT NULL : NULL값 허용 불가
    • UNIQUE :
      • 하나의 테이블내에서 한번만 나옴.
      • 주로 대체키 설정시 사용
    • PRIMARY KEY : 기본키(UNIQUE + NOT NULL)
    • FOREIGN KEY : 외래키
    • CHECK : 도메인 무결성

    1.2. 제약조건의 설정

    • 테이블을 만들 때 속성에 제약조건 지정하기
    CREATE TABLE 테이블명(
    	속성명 속성타입 [제약조건명 제약조건],
        속성명 속성타입,
        속성명 속성타입,
        ...
    )
    • 참조 무결성 제약조건
      • 외래키 값은 다른 테이블의 기본키 값들 중 하나여야 한다.
    CREATE TABLE 테이블명(
    	속성명 CONSTRAINTS 제약조건명 REFERENCE 참조테이블명(속성명)
    )
    • Check 제약조건
      • 도메인 무결성 제약조건 : 입력 값의 제한
    속성명 속성타입 CHECK(조건)
    • 테이블 수준 제약조건
      • 속성 단위로 제약조건 설정은 표현에 있어서 제약이 따른다.
    CREATE TABLE 테이블명(
    	속성명 속성타입,
    	...
    	CONSTRAINT 제약조건명 제약조건(속성명)
    )

    1.3. 제약조건의 변경

    1.3.1. 제약조건의 추가 및 제거

    • 테이블을 생성한 후에 제약조건을 추가하거나 제거할 필요성이 있다.
    • 제약조건도 테이블의 구조 정보에 속함으로 ALTER TABLE을 이용한다.
      • 추가 : ADD CONSTRAINT
      • 제거 : DROP CONSTRAINT
    • 제약조건 이름을 지정해 두어야 추가/제거가 쉽다.
      • 추가
        ALTER TABLE 테이블명
        ADD CONSTRAINT 제약조건명 제약조건(속성명)​
      • 제거
        ALTER TABLE 테이블명
        DROP CONSTRAINT 제약조건명​

     

    300x250