KEY란?
키는 튜플을 유일하게 식별할 수 있는 속성의 집합입니다.
(= 주어진 릴레이션(테이블)에서 모든 인스턴스 가운데 유일함을 보장해주는 하나 이상의 애트리뷰트 집합입니다.)
유일성?
튜플을 유일하게 식별하는 성질
최소성?
유일하게 식별할 수 있는 최소 구성의 성질
키는 크게 식별성과 참조성으로 구분할 수 있으며,
식별성에는 슈퍼키, 후보키, 기본키, 대체키가 있습니다.
참조성에는 외래키가 있습니다.
식별성
Super Key (= 슈퍼키)
슈퍼키는 튜플을 유일하게 구분하기 위해 한 개 이상의 속성들로 이루어진 키입니다.
유일성 O 최소성 X
최소성을 만족해서 찾아도 슈퍼키입니다.
유일성만 만족해서 찾아도 슈퍼키입니다.
예시
(학번, 주민등록번호, {학번,주민등록번호}, {학번,성명}, {학번,성명,학과})
Candidate Key (= 후보키)
기본키가 될 수 있는 후보이며, 슈퍼키 중에서 최소 슈퍼키
유일성과 최소성을 모두 만족해야 후보키가 된다.
두 개의 속성값으로 후보키를 구성할 수 있다
예시
(학번, 주민등록번호)
Primary Key (= 기본키 = 주식별자 = 주키 = PK)
후보키 중에서 대표로 튜플을 식별하기 위해 선택된 키를 의미하며,
기본키는 중복될 수 없고, NULL값이 올 수 없습니다.
후보키 안에 속해있기 때문에 유일성과 최소성을 모두 만족해야 합니다.
하나의 테이블에서는 무조건 기본키가 1개 이상 있어야 합니다.
예시
학번 또는 주민등록번호를 기본키로 설정할 수 있습니다.
Alternate Key (= 대체키)
후보키 중에서 기본키를 제외한 나머지 후보키
후보키 - 기본키 = 대체키
보조키라고도 합니다.
예시
기본키가 학번이라면 대체키는 주민등록번호
기본키가 주민등록번호라면 대체키는 학번
참조성
Foreign Key (= 외래키 FK)
외래키는 하나의 테이블에서 원하는 자료를 얻지 못하는 경우 다른 테이블을 참조하기 위해 사용되는 속성을 말하며,
외래 식별자라고도 합니다. (= 테이블들의 관계를 맺어주도록 하는 키)
찾아갈 때 하나의 결과만 나와야 합니다.
n:1의 관계가 있을 때 1로 찾아가야 합니다.
참조 릴레이션의 기본키와 같아야 합니다.
외래 키는 NULL값이 올 수 있습니다.
외래 키의 속성명과 참조 릴레이션의 기본키 속성은 달라도 무방하다.
식별 관계와 비식별 관계
식별 관계 : 외래키가 기본키인 경우
비식별 관계 : 외래키가 일반 속성인 경우
'📓 Study > Tech Interview' 카테고리의 다른 글
IPC(Inter Process Communication)란? (0) | 2021.09.23 |
---|---|
이상(Anomaly)이란? (0) | 2021.09.22 |
String, StringBuilder, StringBuffer 각각의 차이에 대해 설명해주세요. (0) | 2021.09.21 |
🚗오버라이딩과 🏠오버로딩에 대해 설명해주세요 (2) | 2021.09.21 |
SQL과 NoSQL 차이점은 무엇일까요? (0) | 2021.09.18 |
댓글