키(Key) 제약

I. 데이터 모델링 무결성 위한, 키(Key)의 제약

유형구현 형태설명
본질적
제약
– 데이터 모델 구조적 특성 제약
– 반드시 Primary Key 있어야하고
테이블 셀 단일 값(1차 정규화)
– Primary Key
– Unique Key
내재적
제약
– 의미를 정확히 표현, 오류 방지
– DB 스키마 지정 제약
– 영역 제약, 참조 무결성 제약
– Foreign Key
– Check
– Not null
명시적
제약
– 프로그램에 명시하거나 사용자
수작업으로 생성
– Programmatic
  • DBMS가 발전할수록 프로그램 통한 명시적 제약 대신 스키마 통한 내재적 제약 형태 사용

II. 키(Key)의 본질적 제약 및 내재적 제약

가. 키(Key)의 본질적 제약

  • 본질적 제약을 위한 키의 특성 및 종류
구분항목설명
키의
특성
유일성– 기본키로서 각 튜플 유일하게 구별
최소성– 최소 속성을 기본키로 사용, 유일성 보장
키의
종류
후보키– 항상 유일성과 최소성 모두 만족
기본키– 후보키 중 하나를 대표로 선정하여 사용
대체키– 기본키 외 후보키들의 집합
  • 관계형 데이터모델은 다른 데이터 모델에 비해 비교적 적은 본질적 제약 가짐

나. 키(Key)의 내재적 제약

  • 내재적 제약의 제약 유형 및 형태
제약 유형구현 형태설명
참조 무결성
제약
– Foreign Key– 두 관계 튜플 간 일관성
유지 위한 명시 제약
범위
제약
– Check, Default
– Not null, Rule
– 컬럼(속성) 형식의 제약
– 잘못된 입력 방지
  • 개발자의 생산성이나 입력 오류 가능성 고려 시 무결성 내재적 제약으로 지키는 것이 효율

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^