[ CS-study ] 3. Key에 대해서

다율·2024년 10월 31일

CS-study

목록 보기
3/3
post-thumbnail

Key란?

검색, 정렬시 데이터 베이스에 저장되어 있는 레코드(튜플)을 구분할 수 있는 식별자

1. Super Key (슈퍼키)

: 어떤 속성끼리 묶든지 중복되는 값이 나오지 않고, 구별할 수 있는 것

  • 유일성은 만족하나 최소성은 불만족
    - {이름} 처럼 단독으로는 구별이 가능하지 않기 때문
    ex) {학번 + 이름}, {나이 + 이름}

2. Candidate Key (후보키)

: 튜플를 유일하게 식별할 수 있는 속성들의 부분 집합

  • 모든 테이블(릴레이션)은 반드시 하나 이상의 후보키를 가져야 함
  • 유일성과 최소성을 만족
  • 기본키와 대체키가 합쳐진 것

3. Primary Key (기본키)

: 후보키 중 선택한 주요키

  • 유일하게 특정 튜플을 구별할 수 있는 속성
  • null이나 중복되는 값은 될 수 없음(무결성)

4. Alternate Key (대체키, 보조키)

: 후보키가 둘 이상일 때 기본키를 제외한 나머지 키
ex) 학번과 이름이 후보키인데 그 중 학번이 기본키가 되었을 때 남은 후보키인 이름이 대체키

5. Foreign Key (외래키)

: 두 테이블 간 연결을 설정하는 키

  • 데이터가 일관될 수 있도록 도움
  • 두개 이상의 테이블을 연결(참조관계)할 때 사용

6. Composite Key (복합키)

: 두개 이상의 컬럼으로 구성된 하나의 기본키

  • 튜플의 고유성을 보장하기 위해 사용됨(무결성)
  • 정규화 과정에서의 테이블 간 관계를 나타내는 데 유용함

이미지 출처 :

profile
새싹 개발자 🌱

0개의 댓글