관계 데이터 모델의 개념
기본 용어
Relation
- 하나의 개체에 대한 데이터를 2차원 테이블 구조로 저장한 것
Attribute
- 릴레이션의 열
Tuple
- 릴레이션의 행
Domain
- 하나의 속성이 가질 수 있는 모든 값의 집합
NULL
- 속성 값을 아직 모르거나 해당되는 값이 없음을 표현
Degree
- 하나의 릴레이션에서 속성의 전체 개수
Cardinality
- 하나의 릴레이션에서 Tuple의 전체 개수
릴레이션의 구성
Relation Schema
- 릴레이션의 논리적 구조
- 릴레이션의 이름과 릴레이션에 포함된 모든 속성 이름으로 정의
- ex. 고객 (고객아이디, 고객 이름, 나이, 등급, 직업, 포인트)
- 정적인 특징
Relation Instance (= Relation Extension)
- 어느 한 시점에 릴레이션에 존재하는 Tuple의 집합
- 동적인 특징
릴레이션의 특성
- 투플의 유일성: 하나의 릴레이션에는 동일한 투플이 존재할 수 없다.
- 투플의 무순서: 하나의 릴레이션에서 투플 사이의 순서는 무의미하다.
- 속성의 무순서: 하나의 릴레이션에서 속성 사이의 순서는 무의미하다.
- 속성의 원자성: 속성 값으로 원자 값만 사용할 수 있다.
데이터베이스의 구성
Database Schema
- 데이터베이스의 전체 구조
- 데이터베이스를 구성하는 릴레이션 스키마의 모음
Database Instance
- 데이터베이스를 구성하는 릴레이션 인스턴스의 모음
키의 특성과 종류
Key: 릴레이션에서 투플들을 유일하게 구별하는 속성 또는 속성들의 집합
키의 특성
- 유일성(Uniqueness): 하나의 릴레이션에서 모든 투플은 서로 다른 키 값을 가져야 함
- 최소성(Minimality): 꼭 필요한 최소한의 속성들로만 키를 구성함
키의 종류
- Super Key: 유일성을 만족하는 속성 또는 속성들의 집합
- Candidate Key: 유일성과 최소성을 만족하는 속성 또는 속성들의 집합
- Primary Key: 후보키중에서 기본적으로 사용하기 위해 선택한 키
- Alternate Key: 기본키로 선택되지 못한 후보키
- Foreign Key: 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
- 참조하는 릴레이션: 외래키를 가진 릴레이션
- 참조되는 릴레이션: 외래키가 참조하는 기본키를 가진 릴레이션
- 외래키 속성과 그것이 참조하는 기본키 속성의 이름은 달라도 되지만 도메인은 같아야 한다.
- 하나의 릴레이션에는 외래키가 여러 개 존재할 수도 있고, 외래키를 기본키로 사용할 수도 있다.
- 같은 릴레이션의 기본키를 참조하는 외래키도 정의 가능, 외래키 속성은
NULL
값을 가질 수 있다.
관계 데이터 모델의 제약
무결성 제약 조건 (Integrity Constraint)
데이터의 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙
- 무결성: 데이터를 결함이 없는 상태, 즉 정확하고 유효하게 유지하는 것
개체 무결성 제약 조건 (Entity Integrity Constraint)
- 기본키를 구성하는 모든 속성은 널 값을 가질 수 없다.
참조 무결성 제약 조건 (Referential Integrity Constraint)
- 외래키는 참조할 수 없는 값을 가질 수 없다.
- 외래키 속성이
NULL
값을 가진다고 해서 참조 무결성 제약조건을 위반한 것은 아니다.
'CS > 데이터베이스' 카테고리의 다른 글
6. SQL 기본 문법 (1) | 2023.11.18 |
---|---|
05. 관계 데이터 연산 (0) | 2023.11.09 |
04. 데이터 모델링 (0) | 2023.11.06 |
Week3 오라클과 MySQL (0) | 2023.10.30 |
01. 데이터베이스 시스템 개요 (0) | 2023.10.12 |