X

릴레이션 무결성 제약조건

I. 릴레이션 무결성 규칙의 개요

릴레이션을 조작함에 있어 삽입, 삭제, 갱신 등 연산 수행 전과 후에 대한 의미적 관계(Semantic Relation)를 정의

 

II. 릴레이션 무결성 제약과 사례

가. 릴레이션 무결성 제약

구분 제약 유형 설명
상태
변환
상태 제약 데이터베이스가 일관성 있는 상태 되기 위한 조건
과도 제약 한 상태에서 다른 상태로 변환 과정 적용 규정
집합
여부
집합 제약 어떤 튜플 집합 전체에 관련된 규정
튜플 제약 처리되고 있는 튜플에만 적용되는 규정
시간
측면
즉시 제약 삽입/삭제/갱신 연산이 수행 즉시 적용되는 규정
지연 제약 트랜잭션이 완전히 수행된 뒤 적용되는 규정

나. 릴레이션 무결성 사례

제약 유형 사례
상태 제약 WHEN INSERT CHILD.FAMILY_NAME:
CHECK(PARENT.FAMILY_NM = CHILD.FAMILY_NM);
과도 제약 WHEN UPDATE EMP.SAL:
CHECK(EMP.NEWSAL > EMP.OLDSAL);
집합 제약 AFTER UPDATING EMP.SAL:
CHECK(AVG(EMP.SAL) ≤ 600);
튜플 제약 AFTER UPDATING EMP.SAL:
CHECK(SAL ≤ 5000);
즉시 제약 AFTER UPDATING EMP.SEX:
CHECK(SEX = ‘M’ OR SEX = ‘F’);
지연 제약 WHEN COMMIT:
CHECK(SUM(ACCOUNT.BALANCE) = SUMMARY.TOTAL);

– 릴레이션 무결성 유지는 전체 데이터베이스 일관성에 따른 업무 안정성 유지를 위해 트리거, 저장 프로시저 기반 데이터베이스 구현 가능
 

III. 릴레이션 무결성을 데이터베이스에 구현 방법

구현 방법 구현 기술 설명
무결성
제약조건
DCL – DCL 이용하여 무결성 제약조건을 명시적 기술
– 도메인, 테이블 생성 및 정의 시 조건 명세
트리거
(Trigger)
자동 규칙 – 데이터베이스가 특정 상태 도달 시 자동작동
– 트리거를 사용하여 업무 규칙 강제 시행
저장
프로시저
접근 제어 – 저장 프로시저를 사용하여 데이터 접근 제어
– 보안, 테이블 로그, 데이터 처리, 성능 향상
응용
프로그램
프로그램
코드
– 응용 프로그램 코드에 업무 규칙을 강제 시행
– 데이터베이스 및 시스템 관리 효율화 적용
DBMS
기능
자체 기능 – 트랜잭션의 ACID 보장을 위한 동시성 제어
– 데이터베이스 회복/복구 및 보안 기능

 

Categories: 데이터베이스
도리:

View Comments (2)