관계형 데이터 모델

관계형 데이터 모델의 기본 개념

  • 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델입니다.

  • 하나의 관계에 하나의 개체에 대한 데이터 저장


책 관계

관계형 데이터 모델의 기본 용어

기인하다

  • 열, 관계 속성
  • 파일 관리 시스템 관점에서 필드에 해당

투플(tuple)

  • 관계의 행
  • 파일 관리 시스템의 관점에서 기록에 대응

도메인

  • 속성이 가질 수 있는 모든 값의 집합
  • 속성 값 입력 및 수정 시 적합성을 판단하는 기준이 됨
  • 일반적으로 속성의 특성을 고려한 데이터 타입으로 정의한다.

없는

  • 속성 값이 아직 알려지지 않았거나 존재하지 않음을 나타냅니다.

  • 관계의 총 속성 수

카디널리티

  • 관계의 총 튜플 수

데이터베이스 구성

데이터베이스 스키마

  • 데이터베이스의 전체 구조
  • 데이터베이스를 구성하는 관계 스키마 모음

데이터베이스 인스턴스

  • 데이터베이스를 구성하는 관계 인스턴스 모음


관계의 특성

  • 튜플의 고유성 – 두 개의 동일한 튜플이 릴레이션에 존재할 수 없습니다.

  • 정렬되지 않은 튜플 – 관계에서 튜플의 순서는 관련이 없습니다.

  • 속성의 무작위 순서 – 관계에서 속성의 순서는 관련이 없습니다.

  • 속성의 원자성 – 원자 값만 속성 값으로 사용할 수 있습니다.

열쇠

  • 관계에서 튜플을 고유하게 구별하는 특성 또는 특성 집합입니다.

  • 특정 튜플을 식별하는 데 사용되는 속성 또는 속성 집합입니다.

  • 관계는 중복 튜플을 허용하지 않습니다.

  • 키는 관계 간의 관계를 설정하는 데에도 사용됩니다.

    또한 관계 간의 관계를 설정하는 데 사용됩니다.

특성

  • 고유성 – 관계의 모든 튜플은 서로 다른 키 값을 가져야 합니다.

  • 미니멀리즘 – 키는 최소한의 필수 속성으로만 구성됩니다.

키 유형

슈퍼 키

  • 고유성을 만족하는 속성 또는 속성 집합

후보 키

  • 고유성과 최소성을 만족하는 속성 또는 속성 집합

기본 키

  • 후보 키 중 기본적으로 사용하도록 선택된 키
  • 관계의 튜플은 고유하게 식별 가능한 값을 가져야 합니다.

  • 키 값이 변동해서는 안 됩니다.

  • 가능한 한 적은 수의 속성을 가져야 합니다.

대체 키

  • 기본 키로 선택되지 않은 후보 키


주요 관계

외래 키

  • 다른 관계의 기본 키를 참조하는 속성 또는 속성 집합


관계 사이의 관계

  • 외래 키 속성과 참조하는 기본 키 속성의 이름은 다를 수 있지만 도메인은 동일해야 합니다.

  • 단일 릴레이션은 여러 개의 외래 키를 가질 수 있으며 외래 키는 기본 키로 사용될 수 있습니다.

  • 동일한 관계에서 기본 키를 참조하는 외래 키를 정의할 수도 있습니다.

  • 외래 키 속성은 NULL 값을 가질 수 있습니다.

주요 특성 및 유형 요약

특성

  • 고유성: 관계의 모든 튜플은 서로 다른 키 값을 가져야 합니다.

  • 미니멀리즘: 필요한 최소한의 속성만으로 키 구성

유형

  • 수퍼키: 고유성을 충족하는 속성 또는 속성 집합입니다.

  • 후보 키: 고유성과 최소성을 만족하는 속성 또는 속성 집합입니다.

  • 기본 키: 후보 키 중 기본적으로 사용하도록 선택된 키.
  • 대체 키: 기본 키로 선택되지 않은 후보 키
  • 외래 키: 다른 관계의 기본 키를 참조하는 속성 또는 속성 집합입니다.

무결성 제약

  • 데이터 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙
  • 무결성: 데이터에 결함이 없도록 유지(예: 정확하고 유효함)

ex) 기본 키를 구성하는 모든 속성은 null 값을 가질 수 없습니다.

외래 키는 비참조 값을 포함할 수 없습니다.

도메인 무결성 제약

도메인 제약 조건이라고도 합니다.

관계의 튜플이 각 속성의 도메인에 지정된 값만 가져야 한다는 조건.

SQL 문에서 데이터 타입, null/not null, default value, check 등을 이용하여 지정 가능

객체 무결성 제약

기본 키 제약 조건이라고도 합니다.

릴레이션은 기본 키를 지정하며 다음 무결성 원칙, 즉 기본 키는 NULL 값을 가져서는 안 됩니다.

릴레이션에는 하나의 값만 존재해야 한다는 조건입니다.

  • 삽입 : 기본키 값이 같으면 삽입 금지
  • 수정 : 기본키 값이 같거나 NULL이라도 수정 금지
  • 파기 : 특별한 확인이 필요하지 않은 경우 즉시 파기

참조 무결성 제약 조건

외래 키 제약 조건이라고도 합니다.

관계 간의 참조 관계를 선언하는 제약 조건입니다.

자식 관계의 외래 키는 부모 관계의 기본 키와 동일합니다.

도메인은 동일해야 하며 자식 릴레이션의 값이 변경되면 부모 릴레이션의 제약 조건이 적용됩니다.

  • 외래 키는 비참조 값을 포함할 수 없습니다.

참조 무결성 제약 조건에 대한 옵션(상위 관계에서 튜플을 삭제할 때)

  • 제한됨 – 하위 관계에서 참조하는 경우 상위 관계에 대한 삭제 작업 거부
  • CASCADE – 하위 관계에서 관련 튜플을 함께 삭제합니다.

  • DEFAULT – 하위 관계의 관련 튜플을 미리 설정된 값으로 변경합니다.

  • NULL – 하위 관계의 관련 튜플을 NULL 값으로 설정합니다(NULL 값이 허용되는 경우).