dh_0e

[Database] 관계형 데이터 모델 (2장) 본문

Database

[Database] 관계형 데이터 모델 (2장)

dh_0e 2025. 4. 10. 14:10

관계형 데이터 모델

  • Introdeuced by E.F. Codd (1970)
  • Strong theoretical foundations (강력한 기초 이론) & very simple
  • Numerous commercial systems (수많은 상업 시스템에 이용됨)
  • A collection of relations and integrity constraints (관계와 무결성 제약의 묶음)
  • Relations are unordered & Order of tuples is irrelevant (관계 간에 순서나 상하관계 X)

관계(relation) 예제

 

Equivalent Terms

 

Attributes(속성)

  • 각 속성은 속성 값으로 허용할 수 있는 값의 집합인 domain(도메인)을 가짐
  • 속성 도메인에 속하는 값은 분할할 수 없는 atomic(원소성)을 지닌 값을 가짐
  • 도메인이 없는 것은 null값을 default로 가짐
  • Integer(실수), real, char, varchar, decimal(소수), date, time, timestamp 등을 원자 값으로 분류
  • set, bag(multiset), list등의 Multi-valued 속성은 원자 값이 아님 

 

Keys

  • Key는 하나 이상의 속성(attribute)의 집합으로 구성되어, 튜플(행)을 유일하게 식별하는 역할을 한다.
    • Super Key (슈퍼키):
      튜플을 유일하게 식별할 수 있는 속성들의 집합이다. 유일성은 가지지만, 최소성(minimality)은 요구하지 않기 때문에 불필요한 속성을 포함할 수도 있다.
      ex: (student_id), (student_id, name), (national_id, student_id) 등
    • Candidate Key (후보키):
      • 슈퍼키 중에서 속성 수가 최소인 키
      • 더 이상 속성을 제거하면 유일성이 깨짐
      • 하나의 테이블에 여러 개 존재 가능
      • ex: (student_id), (national_id)
        (각각만으로도 학생을 유일하게 식별 가능하고, 더 줄일 수 없음 → 후보키)
    • Primary Key (기본키 / 주키):
      • 후보키들 중에서 대표로 선택된 하나
      • 테이블의 기본 식별자 역할
      • NULL 값과 중복을 허용하지 않음
      • 한 테이블에는 오직 하나의 기본키만 존재
       
후보키는 여러 개 존재할 수 있지만, 기본키는 하나만 지정 가능하다.
나머지 후보키는 필요에 따라 대체키(Alternate Key)로 사용되기도 함

 

 

Referential Integrity Constraint (참조 무결성)

  • 참조 관계에 있는 두 테이블의 데이터가 항상 일관된 값을 갖도록 유지되는 것을 의미
  • 특정 속성에 나타나는 모든 값은 반드시 다른 속성에도 나타나야 한다는 것을 의미
  • 참조 받는 속성은 반드시 그 테이블의 primary key(주 키)이어야 함

 

Data dictionary (데이터 사전)

  • system catalog라고도 불리며 metadata(data about data)를 저장함
  • DB system이 내부적으로 관리하는 데이터 장소
  • 사용자가 만드는 것이 아닌 data를 저장하면 DBMS가 자동으로 만들어줌

 

Relational Algebra (관계 대수)

  • Procedural language(절차적 언어)
  • 관계, 제약사항에 대한 연산을 제공

Six basic operators

 

  •  이를 조합하여 확장 연산자를 만들 수 있음  

Additional Operations
조인 종류별 비교

# 자연 조인
R(A, B) ⋈ S(B, C)
→ 결과: (A, B, C)  ← 중복된 B는 하나만 남음

# 등가 조인
R(A, B) ⨝ R.B = S.B S(B, C)
→ 결과: (A, R.B, S.B, C)  ← B 속성이 중복으로 유지됨

조인은 교환 법칙이 성립함

 

Outer Join 종류
Outer Join 예제 (조인되는 값이 없을 경우null 값 사용)

'Database' 카테고리의 다른 글

[Database] SQL I, II (3, 5장)  (0) 2025.04.13
[Database] Database 소개 (1장)  (1) 2025.03.14