데이터베이스 키(Key) 정리

이창윤·2022년 8월 17일
1

용어 및 기초 개념

릴레이션(Relation)

  • 관계형 데이터 모델에서 하나의 개체에 관한 데이터를 저장하기 위한 구조 ( = 테이블)
  • 스키마와 인스턴스로 이루어져있다.

릴레이션 스키마(Schema)

  • 릴레이션의 이름, 각 속성의 이름, 타입, 도메인 등을 정의하는 개념

릴레이션 인스턴스(Instance)

  • 릴레이션에 저장되는 데이터(튜플)의 집합

속성(Attribute) / 필드

  • 릴레이션의 열(Column)
  • 서로 다른 이름을 가져야 한다.

튜플(Tuple) / 레코드

  • 릴레이션의 행(Row)
  • 중복되면 안된다.

도메인(Domain)

  • 릴레이션의 속성이 가질 수 있는 원자값들의 집합

차수(Degree)

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

Cardinality

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

Key란?

릴레이션의 튜플을 식별할 수 있는 단일 속성 혹은 속성들의 집합

  • 테이블 내 튜플을 식별해주고 테이블 간의 관계를 설정 및 식별할 수 있다.
  • 유일성최소성에 따라 나눌 수 있다.

유일성(uniqueness) : 하나의 키값으로 튜플을 유일하게 식별할 수 있는 성질

최소성(irreducibility) : 키를 구성하는 속성들 중 꼭 필요한 최소한의 속성들로만 키를 구성하는 성질

Super Key(슈퍼 키)

유일성 O, 최소성 X

  • ex) 학번, 아이디 등은 중복이 허용되지 않아서 유일성을 만족하기 때문에 슈퍼키가 될 수 있지만 나이, 성별 등은 슈퍼키가 될 수 없다.

Candidate Key(후보 키)

유일성 O, 최소성 O

  • ex) 슈퍼키(학번, 나이)는 유일성은 만족하지만 굳이 필요없는 속성인 나이를 포함하고 있어서 최소성을 만족하지 못한다. 나이를 제거해서 최소성을 만족시키면 후보키가 될 수 있다.

Primary Key(기본 키, PK)

후보 키에서 선택받은 키

  • null값을 가질 수 있는 속성이 포함된 후보 키는 기본 키로 부적절하다.
  • 값이 자주 변경될 수 있는 속성이 포함된 후보 키는 기본 키로 부적절하다.

Alternate Key(대체 키)

후보 키에서 선택받지 못한 키

Foreign Key(외래 키, FK)

다른 릴레이션의 기본 키를 참조하는 키

  • 릴레이션 간의 관계를 나타내기 위해 사용
  • ex) 주문과 고객 정보 릴레이션이 있을 때 주문에서 외래 키로 고객 정보의 기본 키인 id를 참조할 수 있다.
  • 외래 키로 고객id를 가져오면 고객 정보와 주문 릴레이션의 정보를 매칭시킬 수 있다.

참고 및 출처

논리적 데이터 모델링, 관계형 모델

0개의 댓글