논리적 데이터 모델의 예시 중 하나인 관계 데이터 모델
관계 데이터 모델의 기본 개념
- 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델
- 하나의 개체에 대한 데이터를 하나의 릴레이션에 저장
- 릴레이션: 하나의 개체에 관한 데이터를 2차원 테이블 구조로 저장. 파일 관리 시스템에서 파일에 대응
- 속성(attribute): 릴레이션의 열. 파일관리시스템의 필드에 대응
- 투플(tuple): 릴레이션의 행. 파일관리시스템에서 레코드에 대응
- 도메인: 하나의 속성이 가질 수 있는 모든 값의 집합. 속성값 입력시 적합성 판단의 기준
- 널: 속성 값을 아직 모르거나 해당되는 값이 없음을 의미
- 차수(degree): 하나의 릴레이션에서 속성의 전체 개수
- 카디널리티: 하나의 릴레이션에서 투플의 전체 개수
릴레이션의 구성
릴레이션 스키마(릴레이션 내포; relation intension)
- 릴레이션의 논리적 구조
- 릴레이션의 이름과 릴레이션에 포함된 모든 속성의 이름으로 정의
- 고객(고객아이디, 나이, 고객이름, 등급)
- 정적
릴레이션 인스턴스(릴레이션 외연; relation extension)
- 어느 한 시점에 릴레이션에 존재하는 투플들의 집합
- 동적(삽입, 삭제, 수정이 계속 발생)
데이터베이스의 구성
- 데이터베이스 스키마: 데이터베이스 구성하는 릴레이션 스키마의 모음
- 데이터베이스 인스턴스: 데이터베이스 구성하는 릴레이션 인스턴스의 모음
릴레이션의 특성
- 투플의 유일성: 하나의 릴레이션에 동일한 투플은 존재할 수 없다
- 투플의 무순서: 하나의 릴레이션에서 투플사이 순서는 노의미
- 속성의 무순서: 하나의 릴레이션에서 속성 순서는 무의미
- 속성의 원자성: 속성값으로는 원자 값만 사용가능
키
- 릴레이션에서 투플들을 유일하게 구별하는 속성 또는 속성들의 집합
- 유일성(uniqueness): 하나의 릴레이션에서 모든 투플은 서로 다른 키 값을 가져야 한다
- 최소성(minimality): 꼭 필요한 최소한의 속성들로만 키를 구성한다
- 슈퍼키: 유일성을 만족하는 속성 또는 속성들의 집합
- 후보키: 유일성과 최소성을 만족하는 속성 또는 속성들의 집합
- 기본키: 후보키 중 기본적으로 사용하기 위해 선택한 키
- 대체키: 기본키로 선택되지 못한 후보키
- 외래키: 다른 릴레이션들의 기본키를 참조하는 속성 또는 속성들의 집합. 다른 릴레이션들과의 관계 표현
관계 데이터 모델의 제약
무결성 제약조건(integrity constraint)
- 데이터의 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙
- 무결성: 데이터에 결함 없이 정확하고 유효하게 유지되는 것
- 개체 무결성 제약조건: 기본키를 구성하는 모든 속성은 널값을 가질 수 없다.
- 참조 무결성 제약조건: 외래키는 참조할 수 없는 값을 가질 수 없다. 외래키 속성이 널 값을 가진다고 해서 참조 무결성 제약조건을 위반한 것은 아니다.
'학교수업 > 데이터베이스' 카테고리의 다른 글
SQL (0) | 2022.04.21 |
---|---|
6장. 관계 데이터 연산 (0) | 2022.04.21 |
4. 데이터 모델링 (0) | 2022.04.21 |
3. 데이터베이스 시스템(DBS) (0) | 2022.04.20 |
[데이터베이스] 2. 데이터베이스 관리 시스템 (DBMS) (0) | 2022.04.12 |