본문 바로가기

Database

[Oracle DBMS] 제약조건 ★ (미완성) 길고 복잡 까다로움


여긴 정리를 엄청 잘 해놔야 함. 

플젝할 때 기억 안 나서 계속 들어오게 될 것임. 

 

무결성

: 결함이 없는 성질

데이터를 올바르게 관리하기 위해선 다양한 무결성을 충족해야 함. 

데이터베이스는 제약조건을 통해 여러가지 무결성들을 보장하고 있다.

 

데이터 무결성

: 데이터의 정확성, 일관성, 유효성을 유지해야 한다. (정유일) 

특히 일관성을 위해 컬럼마다 타입을 제한하고 있음

 

개체 무결성

: 테이블의 데이터는 반드시 한 행을 구분할 수 있어야 한다. 

RDB는 개체무결성을 지키기 위해 제약조건으로 기본키(PK)를 사용

 

참조무결성

: 참조 관계에 있는 데이터는 유효한 데이터를 참조해야 한다. 

 

도메인 무결성 ( 도메인 = 걍 컬럼)

: 하나의 도메인을 구성하는 개체들은 모두 같은 타입이어야 한다. 

테이블 컬럼타입 설정 및 CHECK 제약조건을 통해 유지 가능

 

 

 

데이터 무결성 제약조건

NOT NULL : 해당 도메인에 NULL을 사용하지 않는다. 

UNIQUE : 해당 도메인에 중복되는 값을 허용하지 않는다. 

PRIMARY KEY : 해당 도메인을 테이블의 기본키로 사용한다. (NOT NULL, UNIQUE)

FOREIGN KEY : 해당 도메인을 외래키로 설정한다. 참조하는 도메인을 지정해야 한다. 

CHECK : 원하는 조건을 지정하여 도메인 무결성을 유지한다. 

 

 

제약조건을 보여주는 데이터 딕셔너리 뷰

SELECT * FROM user_constraints FROM all_constraints;

해당 계정의 제약조건만 보여줌