인용하는 그림은 다양한 곳에서 가져왔음을 밝힙니다
Ch 3. 관계 데이터 모델과 제약조건
Section 1. 관계 데이터 모델
- 관계 데이터 모델(relation data model)
- 집합론과 논리 분야에 근거해 튼튼한 이론적 토대를 가지고 있다. 널리 사용되는 모델이다.
1.1 릴레이션 개념
- 행(row)과 열(column)로 구성된 2차원의 테이블을 릴레이션이라고 한다.
- 릴레이션은 수학의 집합에 개념을 두고 있다.
1.2 릴레이션 관련 용어
- 속성 : 릴레이션의 열
- 튜플 : 릴레이션의 행
- 도메인 : 하나의 속성이 가질 수 있는 값들의 집합(문자/숫자/날짜/시간)
- 특정 속성에 대해 값을 알 수 없는 경우 NULL
관계 데이터 모델 | 관계 DBMS | 파일 시스템 |
---|---|---|
릴레이션(relation) | 테이블(table) | 파일(file) |
튜플(tuple) | 행(row) | 레코드(record) |
속성(attribute) | 열(column) | 필드(field) |
1.3 릴레이션 스키마와 인스턴스
- 요구조건의 정의에 따라 만드러진 데이터 구조 = 릴레이션 스키마. intenstion(내포)라 부르기도 한다.
- 스키마에 정의된 속성의 개수를 degree(차수)라 한다.
- 스키마에 데이터를 저장한 것을 인스턴스라고 한다. extenstion(외연)
- 릴레이션 인스턴스는 튜플들의 집합인데, 튜플의 수를 cardinality(릴레이션 기수)라고 한다.
1.4 릴레이션 특성
- 튜플의 유일성
- 튜플의 무순서성
- 속성의 무순서성
- 속성의 원자성
Section 2. 무결성의 제약조건
2.1 키 개념
- 식별자
2.2 릴레이션 키
2.2.1 수퍼키, uniqueness
- 튜플을 유일하게 식별할 수 있는 속성(들)
2.2.2 후보키, minimality
- 튜플을 유일하게 식별하는 최소한의 속성
2.2.3 기본키
- 후보키중에서 튜플을 선택하는 기준으로 사용하는 키
- 따라서 NULL이나 중복된 값을 가질 수 없다.
2.2.4 대체키
- 후보키가 두개 이상인 경우 기본키로 지정되지 않은 후보키
2.2.5 외래키
- 어떤 릴레이션의 기본키를 참조하는 속성
2.3 무결성 제약조건
2.3.1 개체 무결성 제약조건
- 기본키를 구성하는 속성은 NULL이나 중복값을 가질 수 있다.
2.3.2 참조 무결성 제약조건
- 외래키 값은 부모 릴레이션의 어떤 튜플의 기본키 값과 같다.
- 외래키가 자신을 기본키로 포함하고 있는 릴레이션의 기본키를 구성하고 있지 않으면 기본키로 NULL 값을 가진다.