1. 개념
- 사용자의 목적이나 의도와 다른 데이터의 오류방지, 정확성, 유효성, 일관성, 신뢰성을 위해 무효 갱신으로부터 데이터를 보호하는 개념
- 데이터 가치: 업무에 있어서 사용자에게 의미 있는 정보를 제공하기 위함
- 데이터 신뢰성: 항상 정확하고 오류가 없는 데이터가 데이터베이스에 저장되는 신뢰성을 제공함
2. 종류
무결성의 종류 | 내용 | 명령어 |
개체(엔티티) 무결성 | • 한 엔티티는 중복과 누락이 있을 수 없음 • 즉, 동일한 PK를 가질 수 없거나 PK 속성이 null값을 허용할 수 없음 |
• Primary key • Unique index |
참조(도메인) 무결성 | • 외래키가 참조하는 다른 개체의 기본 키에 해당하는 값이 기본 키 값이나 Null이어야 함 | • Foreign key |
속성 무결성 | • 속성 값은 기본값, Null여부, 도메인(데이터 타입, 길이)이 지정된 규칙을 준수하여 존재하여야 함 | • CHECK • NULL/NOT NULL • DEFAULT |
사용자(의미) 무결성 | • 사용자의 의미적 요구사항을 준수해야 함 | • Trigger • User defined data type |
키 무결성 | • 한 릴레이션에 같은 키 값을 가진 튜플들이 허용되지 않음 | • Unique |
3. Foreign Key(외래키)의 무결성 설정 조건
- 입력 참조 무결성: DEPENDENT, AUTOMATIC, DEFAULT, NULL
- 수정 참조 무결성: RESTRICT, CASCADE
- 삭제 참조 무결성: RESTRICT, CASCADE, DEFAULT, NULL
-- <예시> test_table1을 참조하여 Update하면 같이 변경되고, Delete할 땐 같이 삭제되게끔 설정
CREATE TABLE test_table(
ID INT,
ParentID INT,
FOREIGH KEY (ParentID)
REFERENCES test_table1 ON UPDATE CASCADE ON DELETE RESTRICT
);
'Computer Science > Database' 카테고리의 다른 글
[데이터베이스 핵심 요약] 9. 반정규화(Denormalization) (0) | 2022.11.13 |
---|---|
[데이터베이스 핵심 요약] 8. 정규화(Normalization)와 함수적 종속성 (0) | 2022.11.13 |
[데이터베이스 핵심 요약] 6. NoSQL (0) | 2022.11.12 |
[데이터베이스 핵심 요약] 5. JOIN 문 (0) | 2022.11.12 |
[데이터베이스 핵심 요약] 4. 트랜잭션(Transaction) (0) | 2022.11.11 |