검수요청.png검수요청.png

"키 (데이터베이스)"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
잔글
잔글 (같이 보기)
 
(같은 사용자의 중간 판 7개는 보이지 않습니다)
1번째 줄: 1번째 줄:
 
'''키'''(key)란 [[데이터베이스]]에 저장되어 있는 [[레코드]]를 유일하게 구별할 수 있는 [[식별자]](identifier)를 말한다. '''데이터베이스 키'''(database key) 또는 '''디비 키'''(DB key)라고도 한다. [[기본키]](PK, primary key), [[수퍼키]](super key), [[후보키]](candidate key), [[대리키]](alternate key), [[외래키]](FK, foreign key) 등이 있다.
 
'''키'''(key)란 [[데이터베이스]]에 저장되어 있는 [[레코드]]를 유일하게 구별할 수 있는 [[식별자]](identifier)를 말한다. '''데이터베이스 키'''(database key) 또는 '''디비 키'''(DB key)라고도 한다. [[기본키]](PK, primary key), [[수퍼키]](super key), [[후보키]](candidate key), [[대리키]](alternate key), [[외래키]](FK, foreign key) 등이 있다.
 +
 +
== 개요 ==
 +
키(key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)이다.<ref name='db_key'>Lim-Ky, 〈[https://limkydev.tistory.com/108 키(Key)의 개념 및 종류]〉, 2017-10-23</ref>
 +
 +
== 종류 ==
 +
=== 기본키 ===
 +
* 후보키 중에서 선택한 주키(Main Key)
 +
* 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
 +
* Null 값을 가질 수 없다.
 +
* 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없다.<ref name='db_key'></ref>
 +
 +
=== 후보키 ===
 +
* 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별할 수 있는 속성들의 부분집합을 의미한다.
 +
* 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야 한다.
 +
* 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야 한다.<ref name='db_key'></ref>
 +
 +
=== 대체키 ===
 +
* 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키들을 말한다.
 +
* 보조키라고도 한다.<ref name='db_key'></ref>
 +
 +
=== 슈퍼키 ===
 +
* 슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다.
 +
* 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족시키지 못한다.<ref name='db_key'></ref>
 +
 +
=== 외래키 ===
 +
* 외래키(FK)는 참조되는 릴레이션의 기본키와 대응되어 릴레이션 간에 참조 관계를 표현하는데 중요한 도구로 사용된다.
 +
* 관계(Relation)를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1 릴레이션의 속성이다.
 +
* 외래키로 지정되면 참조 테이블의 기본키에 없는 값은 입력할 수 없다.<ref name='db_key'></ref>
 +
 +
{{각주}}
  
 
== 같이 보기 ==
 
== 같이 보기 ==
6번째 줄: 36번째 줄:
 
* [[기본키]](PK)
 
* [[기본키]](PK)
 
* [[외래키]](FK)
 
* [[외래키]](FK)
 +
* [[키 (암호)]]
 +
* [[키]]
  
[[분류:데이터베이스]]
+
{{데이터|검토 필요}}

2021년 8월 7일 (토) 03:17 기준 최신판

(key)란 데이터베이스에 저장되어 있는 레코드를 유일하게 구별할 수 있는 식별자(identifier)를 말한다. 데이터베이스 키(database key) 또는 디비 키(DB key)라고도 한다. 기본키(PK, primary key), 수퍼키(super key), 후보키(candidate key), 대리키(alternate key), 외래키(FK, foreign key) 등이 있다.

개요[편집]

키(key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)이다.[1]

종류[편집]

기본키[편집]

  • 후보키 중에서 선택한 주키(Main Key)
  • 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
  • Null 값을 가질 수 없다.
  • 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없다.[1]

후보키[편집]

  • 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별할 수 있는 속성들의 부분집합을 의미한다.
  • 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야 한다.
  • 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야 한다.[1]

대체키[편집]

  • 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키들을 말한다.
  • 보조키라고도 한다.[1]

슈퍼키[편집]

  • 슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다.
  • 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족시키지 못한다.[1]

외래키[편집]

  • 외래키(FK)는 참조되는 릴레이션의 기본키와 대응되어 릴레이션 간에 참조 관계를 표현하는데 중요한 도구로 사용된다.
  • 관계(Relation)를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1 릴레이션의 속성이다.
  • 외래키로 지정되면 참조 테이블의 기본키에 없는 값은 입력할 수 없다.[1]

각주[편집]

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Lim-Ky, 〈키(Key)의 개념 및 종류〉, 2017-10-23

같이 보기[편집]


  검수요청.png검수요청.png 이 키 (데이터베이스) 문서는 데이터에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.