CS/데이터베이스

관계 데이터 모델

잠수함 2021. 5. 6. 23:24
728x90

6-1 관계 데이터 모델 개념

- 개념적 구조를 논리적 구조로 표현하는 데이터 모델

- 하나의 개체에 대한 데이터를 하나의 릴레이션(TABLE) 에 저장

 

 

6-2 관계 데이터 모델 용어

* 릴레이션(테이블)

- 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장한 것

- 파일 관리 시스템 관점에서 파일에 대응

 

* 속성(attribute)

- 릴레이션의 열

- 파일 관리 시스템 관점에서 필드에 대응

 

* 튜플

- 릴레이션의 행

 

* 도메인

- 하나의 속성이 가질 수 있는 값의 집합

- 속성 값을 입력 및 수정할 때 적합성 판단의 기준이 됨

- 일반적으로 석성의 특성을 고려한 데이터 타입으로 정의

 

* 널(Null)

- 속성 값을 아직 모르거나 해당되는 값이 없음을 표현

* 차수(degree)

- 하나의 릴레이션에서 속성의 전체 개수

 

 

* 카디널리티

- 하나의 릴레이션에서 튜플의 전체개수

 

* 릴레이션 스키마

- 릴레이션의 이름과 릴레이션에 포함된 모든 속성의 이름으로 정의하는 릴레이션의 논리적 구조

- 데이터베이스 관리 시스템이 내부적으로 데이터 정의어를 이용해 정의

 

* 릴레이션 인스턴스

- 어느 한 시점에 릴레이션에 존재하는 튜플들의 집합

- 릴레이션 인스턴스에 포함된 튜플은 릴레이션 스키마에 정의하는 각 속성에 대응하는 실제값으로 구성되어 있음

- 릴레이션 인스턴스를 보면 현재 릴레이션의 실제 내용을 쉽게 파악가능.

- DBMS 관리 시스템이 내부적으로 데이터 조작어를 이용해 릴레이션 인스턴스의 튜플을 검색하거나 새로운 튜플 삽입과 기존 튜플 삭제 및 수정을 수행.

 

 

 

 

 

 

 

 

 

 

6-3 릴레이션 특성

* 튜플의 유일성

- 하나의 릴레이션에는 동일한 튜플이 존재할 수 없음(중복 허용이 안됨)

 

* 튜플의 무순서

- 하나의 릴레이션에서 튜플 사이의 순서는 무의미함

- 시간이 지남에 따라 데이터의 삭제, 수정, 삽입에 따라 순서가 바뀔 수 있음

 

* 속성의 무순서

- 하나의 릴레이션에서 속성의 순서는 무의미함

 

* 속성의 특징

- 각 속성의 값은 도메인에 정의된 값만을 가지며 그 값은 모두 단일 값이어야 함

- 속성은 한 릴레이션에서 서로 다른 이름을 가져야만 함

- 한 속성에 속산 열은 모두 그 속성에서 정의한 도메인 값만 가질 수 있음

 

 

6-4 키의 특성

- 유일성: 하나의 릴레이션에서 모든 튜플은 서로 다른 키 값을 가져야 함

- 최소성: 꼭 필요한 최소한의 속성들로만 키를 구성함

 

6-5 키의 종류

* 슈퍼키

- 유일성을 만족하는 속성 또는 속성들의 집합

- 튜플을 유일하게 식별할 수 있는 값이면 모두 슈퍼키가 될 수 있음

 

* 후보키

- 유일성과 최소성을 만족하는 속성 또는 속성들의 집합

- 튜플을 유일하게 식별할 수 있는 속성의 최소 합집

 

* 기본키

- 후보키 중에서 기본적으로 사용하기 위해 선택한 키

- 후보키가 하나뿐이라면 후보키를 기본키로 사용하면 되고, 여러 개라면 릴레이션의 특성을 반영하여 하나를 선택

- 릴레이션 스키마를 표현할 때 기본키는 밑줄을 그어 표시함

 

+ 기본키 선정 시 고려사항

- 릴레이션 내 튜플을 식별할 수 있는 고유 값을 가져야함

- NULL 값 허용안함

- 키 값의 변동이 일어나지 않아야 함.

- 최대한 적은 수의 속성을 가진 것이라야 함

- 향후 키를 사용하는데 있어서 문제 발생 소지가 없어야 함

 

 

* 대체키

- 기본키로 선택되지 못한 후보키

 

* 외래키

- 다른 릴레이션의 기본키를 참조하는 속성을 말함

- 다른 릴레이션의 기본키를 참조하여 관계 데이터 모델의 특징인 릴레이션 간의 관계를 표현함

 

 

 

6-6 관계 데이터 모델의 제약

* 무결성 제약조건( 개체 무결성 제약조건 | 참조 무결성 제약조건 )

- 데이터의 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙

- 무결성이란? 데이터를 결함이 없는 상태, 즉 정확하고 유효하게 유지하는 것

 

* 개체 무결성 제약조건

- 기본키를 구성하는 모든 속성은 NULL값을 가질 수 없는 규칙

- 릴레이션 내에 오직 하나의 값만 존재

 

* 참조 무결성 제약조건

- 외래키는 참조할 수 없는 값을 가질 수 없는 규칙

 

 

 

 

 

 

 

 

 

 

'CS > 데이터베이스' 카테고리의 다른 글

데이터 언어  (0) 2021.05.06
데이터베이스 관리 시스템(DBMS)  (0) 2021.04.05
데이터 베이스  (0) 2021.04.05