CODEDRAGON ㆍDevelopment/Database
데이터 무결성 제약 조건
테이블에 부적절한 자료가 입력되는 것을 방지하기 위해서 테이블을 생성할 때, 각 컬럼에 대해서 정의하는 여러 가지 규칙을 지칭합니다.
무결성 |
데이터베이스내에 있는 데이터의 정확성 유지하는 것 |
제약조건 (Constraint) |
부적절한 데이터가 저장되는 것을 방지하는 것 |
무결성 제약 조건의 종류
테이블에 잘못된 데이터가 저장되지 않도록 결합이 없는 데이터로만 유지할 수 있도록 하는 제약조건들입니다.
무결성 제약 조건 |
역할 |
NOT NULL |
· NULL을 허용하지 않습니다. · 기본적으로 칼럼은 NULL값을 허용하지만 NOT NULL의 선언을 통해 제한할 수 있습니다. |
UNIQUE |
· 중복된 값을 허용하지 않고, 항상 유일한 값을 갖도록 합니다. · 테이블에 저장된 데이터(행)를 식별하기 위한 정의입니다. · NULL은 UNIQUE KEY의 제약 대상이 아니므로 NULL값을 가진 데이터(행)이 다수 존재해도 무관합니다. |
PRIMARY KEY |
· NULL을 허용하지 않고, 중복된 값도 허용하지 않습니다. · NOT NULL 조건과 UNIQUE 조건을 결합한 형태입니다. · 컬럼 값을 primary key로 정의합니다. · 테이블에 저장된 데이터(행)를 식별하기 위한 정의로 하나의 칼럼만을 대상으로 합니다. · PRIMARY KEY를 정의하면 DBMS는 자동으로 UNIQUE 인덱스를 생성합니다. · PRIMARY KEY로 선언된 칼럼에는 NULL을 입력할 수 없습니다.
|
FOREIGN KEY |
· REFERENCES · 참조되는 테이블의 칼럼의 값이 존재하면 허용합니다. · 컬럼 값이 다른 컬럼에 반드시 존재해야 합니다. · 관계형 데이터베이스의 테이블간 정의를 위해 PRIMARY KEY로 선언된 칼럼을 다른 테이블의 FOREIGN KEY로 복사하는 경우 생성됩니다. · FOREIGN KEY를 지정할 경우 참조 무결성 제약 옵션을 선택할 수 있습니다. |
CHECK |
· 저장 가능한 데이터 값의 범위나 조건을 지정하여, 설정한 값만을 허용합니다.(입력 가능한 값의 범위 등을 제한) · CHECK의 사용을 통해 논리식(TRUE / FALSE)을 지정할 수 있습니다. |
제약조건 설정 방법
· 컬럼 레벨 방식
· 테이블 레벨 방식
'Development > Database' 카테고리의 다른 글
테이블 스페이스 생성 및 사용자에게 할당하는 방법 (0) | 2016.10.31 |
---|---|
테이블 스페이스 설정 정보 확인 (0) | 2016.10.31 |
온라인 트랜잭션 처리(OLTP) (0) | 2016.10.27 |
온라인 분석처리(OLAP, OnLine Analytical Processing), 온라인 분석 처리의 특성 (0) | 2016.10.27 |
Oracle - OPS (Oracle Parallel Server) (0) | 2016.10.27 |