본문 바로가기

Database/Oracle

Oracle。데이터 무결성과 제약 조건

728x90
반응형

제약 조건은 컬럼에 들어가는 값을 제한하여 데이터의 정확성과 일관성 보장

무결성(Integrity) 조건을 만족하기 위해서 컬럼에 들어가는 값을 제한하기 위한 표준방법 중 하나로 NOT NULL, PRIMARY KEY, FOREIGN KEY 등 존재

 

1. NOT NULL 제약 조건

NULL 값이 아닌 데이터 입력

 

2. 기본키(PRIMARY KEY) 제약 조건

이상 현상(anomaly)이 일어나지 않도록 하기 위해 제공하는 조건

기본키로 지정한 컬럼은 널(NULL)값이나 중복된 값을 가질 수 없기 때문에 개체 무결성을 유지할 수 있음

동명이인의 경우 이름을 기본키로 지정하지 못하고, 사원번호나 주민번호를 추가 하여 기본키로 구별

 

개체 무결성 : 개체가 결점이 없음. 결점이 없는 무결한 개체는 데이터베이스에 저장되어 있는 데이터가 서로 구별될 수 있어야 함

이상 현상(anomaly) : 동일한 데이터(동명이인)가 두 개이상 존재할 때 어떤 데이터를 선택해야 하는지 알 수 없는 경우에 발생

 

3. 외래키(FOREIGN KEY) 제약 조건

관계형 데이터베이스는 데이터가 중복되어 저장하는 것을 지양

중복된 데이터가 있는 경우 저장 공간이 낭비되고, 데이터 추가, 수정, 삭제가 곤란

중복된 데이터 저장을 막기 위해 데이터를 나뉘어 저장하고, 여러 테이블을 연결하여 사용

특정 테이블의 컬럼이 다른 테이블의 컬럼을 참조하게 되고, 다른 테이블의 컬럼 값을 참조하는 테이블을 '자식 테이블'이라 하고, 다른 테이블에 의해 참조되는 테이블을 '부모 테이블'이라고 함

자식 테이블의 특정 컬럼(외래 키)이 부모 테이블의 특정 컬럼(기본 키)을 참조하도록 제약을 걸어 둘 때 사용되는 것이 외래 키 제약 조건

728x90
반응형

'Database > Oracle' 카테고리의 다른 글

Oracle。WHERE 절과 연산자  (0) 2017.06.02
Oracle。기본 사용법  (0) 2017.06.01
Oracle。데이터 타입  (0) 2017.05.30
Oracle。오라클(Oracle) 데이터베이스 접속  (0) 2017.05.16
Oracle。기본 명령어 유형  (0) 2017.05.15