Top 39 데이터 베이스 키 The 155 Detailed Answer

You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 데이터 베이스 키 on Google, you do not find the information you need! Here are the best content compiled and compiled by the https://toplist.maxfit.vn team, along with other related topics such as: 데이터 베이스 키 db 외래키, Candidate key 뜻, Super key, Candidate key, 후보키, 데이터베이스 부분키, 슈퍼키, 관계형 데이터베이스 외래 키, Primary key Foreign key


040104 키의개념및종류
040104 키의개념및종류


[DataBase] 키(Key)의 개념 및 종류

  • Article author: limkydev.tistory.com
  • Reviews from users: 34736 ⭐ Ratings
  • Top rated: 4.5 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [DataBase] 키(Key)의 개념 및 종류 키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성) … …
  • Most searched keywords: Whether you are looking for [DataBase] 키(Key)의 개념 및 종류 키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성) … 데이터 베이스 키(Key)의 개념 및 종류 키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)입니다. *튜플 : 릴레이..
  • Table of Contents:

태그

관련글

댓글2

공지사항

최근글

인기글

최근댓글

태그

전체 방문자

[DataBase] 키(Key)의 개념 및 종류
[DataBase] 키(Key)의 개념 및 종류

Read More

[DB] 키의 개념과 종류 :: 꼽행착오

  • Article author: ggop-n.tistory.com
  • Reviews from users: 26916 ⭐ Ratings
  • Top rated: 4.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [DB] 키의 개념과 종류 :: 꼽행착오 데이터베이스에서 키 (Key) 는 조건에 만족하는 튜플을 찾거나, 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 기준이 되는 속성이다. …
  • Most searched keywords: Whether you are looking for [DB] 키의 개념과 종류 :: 꼽행착오 데이터베이스에서 키 (Key) 는 조건에 만족하는 튜플을 찾거나, 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 기준이 되는 속성이다. 데이터베이스 키의 개념과 종류 데이터베이스에서 키 (Key) 는 조건에 만족하는 튜플을 찾거나, 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 기준이 되는 속성이다. 더보기 ※ 튜플 (Tuple) : 릴레이션 (테..Back-End 개발자가 되기 위해 공부중입니다.
    공부한 결과를 기록하고 기억하기 위한 공간으로 운영 중입니다.
  • Table of Contents:
[DB] 키의 개념과 종류

데이터베이스 키의 개념과 종류

[DB] 키의 개념과 종류 :: 꼽행착오
[DB] 키의 개념과 종류 :: 꼽행착오

Read More

[DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리

  • Article author: inpa.tistory.com
  • Reviews from users: 4665 ⭐ Ratings
  • Top rated: 4.9 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리 Key의 종류 · 슈퍼 키(Super Key): 유일성을 만족하는 키. · 복합 키(Composite Key): 2개 이상의 속성(attribute)를 사용한 키. · 후보 키(Candate key): … …
  • Most searched keywords: Whether you are looking for [DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리 Key의 종류 · 슈퍼 키(Super Key): 유일성을 만족하는 키. · 복합 키(Composite Key): 2개 이상의 속성(attribute)를 사용한 키. · 후보 키(Candate key): … Key의 종류 슈퍼 키(Super Key): 유일성을 만족하는 키. 예를 들면, {학번 + 이름}, {주민등록번호 + 학번} 복합 키(Composite Key): 2개 이상의 속성(attribute)를 사용한 키. 후보 키(Candidate key): 유일..
  • Table of Contents:

Key의 종류

방문해 주셔서 감사드립니다

공지사항

최근 댓글 new

최근 글 new

인기 글 hot

티스토리툴바

[DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리
[DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리

Read More

[데이터베이스] 키의 개념과 종류

  • Article author: kosaf04pyh.tistory.com
  • Reviews from users: 18719 ⭐ Ratings
  • Top rated: 3.5 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [데이터베이스] 키의 개념과 종류 1. 슈퍼키 : 유일성 O, 최소성 X 슈퍼키는 유일성의 특성을 만족하는 속성 또는 속성들의 집합입니다. · 2. 후보키 : 유일성 O, 최소성 O · 3. 기본키 : … …
  • Most searched keywords: Whether you are looking for [데이터베이스] 키의 개념과 종류 1. 슈퍼키 : 유일성 O, 최소성 X 슈퍼키는 유일성의 특성을 만족하는 속성 또는 속성들의 집합입니다. · 2. 후보키 : 유일성 O, 최소성 O · 3. 기본키 : … 이번 시간에는 데이터베이스의 슈퍼키, 후보키, 기본키, 대체키, 외래키에 대해 공부해 보겠습니다. 릴레이션에서는 수많은 튜플들이 있습니다. 고객 릴레이션에 많은 고객들에 대한 튜플이 존재하며 각 튜플들에..
  • Table of Contents:
[데이터베이스] 키의 개념과 종류

최소성 유일성

키의 종류와 개념

[데이터베이스] 키의 개념과 종류
[데이터베이스] 키의 개념과 종류

Read More

키 (데이터베이스) – 해시넷

  • Article author: wiki.hash.kr
  • Reviews from users: 14495 ⭐ Ratings
  • Top rated: 3.8 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 키 (데이터베이스) – 해시넷 데이터베이스 키(database key) 또는 디비 키(DB key)라고도 한다. 기본키(PK, primary key), 수퍼키(super key), 후보키(candate key), 대리키( … …
  • Most searched keywords: Whether you are looking for 키 (데이터베이스) – 해시넷 데이터베이스 키(database key) 또는 디비 키(DB key)라고도 한다. 기본키(PK, primary key), 수퍼키(super key), 후보키(candate key), 대리키( …
  • Table of Contents:

위키

목차

개요[편집]

종류[편집]

각주[편집]

같이 보기[편집]

키 (데이터베이스) - 해시넷
키 (데이터베이스) – 해시넷

Read More

[DB] 키(Key) 정리 / MySQL

  • Article author: cano721.tistory.com
  • Reviews from users: 7290 ⭐ Ratings
  • Top rated: 3.6 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [DB] 키(Key) 정리 / MySQL Key. 데이터베이스에서 튜플(Tuple)을 검색 또는 정렬시에 구분할 수 있는 기준이 되는 속성(attribute). 튜플:테이블을 구성하는 데이터들 중 가로 1 … …
  • Most searched keywords: Whether you are looking for [DB] 키(Key) 정리 / MySQL Key. 데이터베이스에서 튜플(Tuple)을 검색 또는 정렬시에 구분할 수 있는 기준이 되는 속성(attribute). 튜플:테이블을 구성하는 데이터들 중 가로 1 … Key 데이터베이스에서 튜플(Tuple)을 검색 또는 정렬시에 구분할 수 있는 기준이 되는 속성(attribute) 튜플:테이블을 구성하는 데이터들 중 가로 1줄. 즉 테이블에서의 속성들의 값을 가지고 있는 데이터 셋. 데..
  • Table of Contents:

Key

키의 종류

슈퍼키(Super Key)

외래키(Foreign Key)

그림을 통한 이해

My SQL에서의 키

태그

관련글

댓글0

공지사항

최근글

인기글

최근댓글

태그

전체 방문자

[DB] 키(Key) 정리 / MySQL
[DB] 키(Key) 정리 / MySQL

Read More

[Database] 키(Key) 개념과 종류 | Hoyeon

  • Article author: hoyeonkim795.github.io
  • Reviews from users: 19957 ⭐ Ratings
  • Top rated: 3.6 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [Database] 키(Key) 개념과 종류 | Hoyeon 키(key) 란 데이터 베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다. 이 키가 왜 필요한지에 대한 이유는 … …
  • Most searched keywords: Whether you are looking for [Database] 키(Key) 개념과 종류 | Hoyeon 키(key) 란 데이터 베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다. 이 키가 왜 필요한지에 대한 이유는 … 키의 개념
  • Table of Contents:

기본키 (Primary key)

후보키 (Candidate key)

대체키(Alternate key)

외래키 (Foreign key)

[Database] 키(Key) 개념과 종류 | Hoyeon
[Database] 키(Key) 개념과 종류 | Hoyeon

Read More

JE의 끄적끄적

  • Article author: jungeun960.tistory.com
  • Reviews from users: 43183 ⭐ Ratings
  • Top rated: 3.7 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about JE의 끄적끄적 [ Database ] 키(Key)의 개념과 종류 (후보키, 기본키, 대체키, 슈퍼키, 외래키) · 후보키 (Candate Key) · 기본키 (Primary Key) = 주 키, 프라이머리 키 … …
  • Most searched keywords: Whether you are looking for JE의 끄적끄적 [ Database ] 키(Key)의 개념과 종류 (후보키, 기본키, 대체키, 슈퍼키, 외래키) · 후보키 (Candate Key) · 기본키 (Primary Key) = 주 키, 프라이머리 키 … 키(Key)란 데이터베이스에서 검색, 정렬 시 다른 튜플들과 구별할 수 있는 기준이 되는 Attribute(속성)입니다. + 튜플(Tuple) : 릴레이션을 구성하는 각각의 행, 속성의 모임으로 구성된다. 후보키 (Candidate Ke..개발자 블로그 일상
  • Table of Contents:
[ Database ] 키(Key)의 개념과 종류 (후보키 기본키 대체키 슈퍼키 외래키)

티스토리툴바

 JE의 끄적끄적
JE의 끄적끄적

Read More

관계형 데이터베이스의 키(Key) – 후보키, 기본키, 대체키, 슈퍼키, 외래키

  • Article author: computer-science-student.tistory.com
  • Reviews from users: 22390 ⭐ Ratings
  • Top rated: 3.8 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 관계형 데이터베이스의 키(Key) – 후보키, 기본키, 대체키, 슈퍼키, 외래키 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다. 키의 종류로는 후보키(Candate Key), … …
  • Most searched keywords: Whether you are looking for 관계형 데이터베이스의 키(Key) – 후보키, 기본키, 대체키, 슈퍼키, 외래키 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다. 키의 종류로는 후보키(Candate Key), … 키(Key) 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다. 키의 종류로는 후보키(Candidate Key), 기본키(Primary key), 대체키(Alternate Key), 슈퍼키(Supe..
  • Table of Contents:

컴공생의 다이어리

관계형 데이터베이스의 키(Key) – 후보키 기본키 대체키 슈퍼키 외래키 본문

키(Key)

후보키(Candidate Key)

기본키(Primary key)

대체키(Alternate Key)

슈퍼키(Super Key)

외래키(Foreign Key)

티스토리툴바

관계형 데이터베이스의 키(Key) - 후보키, 기본키, 대체키, 슈퍼키, 외래키
관계형 데이터베이스의 키(Key) – 후보키, 기본키, 대체키, 슈퍼키, 외래키

Read More

관계형 데이터베이스[DB] , 키(key), 기본키, 외래키

  • Article author: nowes00.tistory.com
  • Reviews from users: 22255 ⭐ Ratings
  • Top rated: 3.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 관계형 데이터베이스[DB] , 키(key), 기본키, 외래키 관계형 데이터베이스[DB] , 키(key), 기본키, 외래키 · 데이터 모델. – 물리적으로 존재하는 복잡한 현실세계를 단순화되고 정형화된 형태로 표현하는 방식 … …
  • Most searched keywords: Whether you are looking for 관계형 데이터베이스[DB] , 키(key), 기본키, 외래키 관계형 데이터베이스[DB] , 키(key), 기본키, 외래키 · 데이터 모델. – 물리적으로 존재하는 복잡한 현실세계를 단순화되고 정형화된 형태로 표현하는 방식 … 데이터 모델 – 물리적으로 존재하는 복잡한 현실세계를 단순화되고 정형화된 형태로 표현하는 방식 또는 규범 – 실제 데이터가 갖는 특성을 살리면서 목적에 맞게 관심 있는 정보만을 단순화하여 표현하는 방식 ✔..comcom
  • Table of Contents:

관계형 데이터베이스[DB] 키(key) 기본키 외래키

티스토리툴바

관계형 데이터베이스[DB] , 키(key), 기본키, 외래키
관계형 데이터베이스[DB] , 키(key), 기본키, 외래키

Read More


See more articles in the same category here: 533+ tips for you.

[DataBase] 키(Key)의 개념 및 종류

반응형

데이터 베이스 키(Key)의 개념 및 종류

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

*튜플 : 릴레이션을 구성하는 각각의 행, 속성의 모임으로 구성된다. 파일 구조에서는 레코드와 같은 개념, 튜플의 수 = 카디널리티(Cardinality) = 기수 = 대응수

<학생> 릴레이션

학번 주민번호 성명 성별 1001 810429-1231457 김형석 남 1002 800504-1546781 김현천 남 1002 811216-2547842 류기선 여 1003 910322-1233445 홍영선 여

<수강> 릴레이션

학번 과목명 1001 영어 1001 전산 1002 영어 1003 수학 1004 영어 1004 전산

1. 후보키 (Candidate Key)

* 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별할 수 있는 속성들의 부분집합을 의미합니다.

* 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야합니다.

* 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야합니다.

ex) <학생> 릴레이션에서 ‘학번’이나 ‘주민번호’는 다른 레코드를 유일하게 구별할 수 있는 기본키로 사용할 수 있으므로 후보키가 될 수 있습니다. 즉

기본키가 될 수 있는 키들을 후보키라고 합니다.

2. 기본키 (Primary Key)

* 후보키 중에서 선택한 주키(Main Key)

* 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성

* Null 값을 가질 수 없습니다. (개체 무결성의 첫번째 조건)

* 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없습니다.(개체 무결성의 두번째 조건)

ex) <학생> 릴레이션에는 ‘학번’이나 ‘주민번호’가 기본키가 될 수 있고, <수강> 릴레이션에는 ‘학번’+’과목명’으로 조합해야 기본키가 만들어 질 수 있습니다. 왜냐면 <수강> 릴레이션에서는 ‘학번’ 속성과 ‘과목명’ 속성은 개별적으로 기본키로 사용할 수 없습니다. 다른 튜플들과 구별되지 않기 때문이지요..

ex) <학생> 릴레이션에서 ‘학번’을 기본키로 정의되면 이미 입력된 ‘1001’은 다른 튜플의 ‘학번’ 속성 값으로 입력할 수 없습니다.

3. 대체키 (Alternate Key)

* 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키들을 말합니다.

* 보조키라고도 합니다.

ex) <학생> 릴레이션에서 ‘학번’을 기본키로 정의하면 ‘주민번호’는 대체키가 됩니다.

4. 슈퍼키 (Super Key)

* 슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않습니다.

* 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족시키지 못합니다.

ex) <학생> 릴레이션에서는 ‘학번’, ‘주민번호’, ‘학번’+’주민번호’, ‘학번’+’주민번호’+’성명’ 등으로 슈퍼키를 구성할 수 있습니다. 또한 여기서 최소성을 만족시키지 못한다는 말은 ‘학번’+’주민번호’+’성명’ 가 슈퍼기인 경우 3개의 속성 조합을 통해 다른 튜플과 구별이 가능하지만, ‘성명’ 단독적으로 슈퍼키를 사용했을 때는 구별이 가능하지 않기 때문에 최소성을 만족시키지 못합니다. 즉 뭉쳤을 경우 유일성이 생기고, 흩어지면 몇몇 속성들은 독단적으로 유일성있는 키로 사용할 수 없습니다. 이것을 최소성을 만족하지 못한다고 합니다.

5. 외래키 (Foreign Key)

* 관계(Relation)를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1 릴레이션의 속성

* 외래키는 참조되는 릴레이션의 기본키와 대응되어 릴레이션 간에 참조 관계를 표현하는데 중요한 도구로 사용됩니다.

* 외래키로 지정되면 참조 테이블의 기본키에 없는 값은 입력할 수 없습니다. (참조 무결성 조건)

ex) <수강> 릴레이션이 <학생> 릴레이션을 참조하고 있으므로 <학생> 릴레이션의 ‘학번’은 기본키이고, <수강> 릴레이션의 ‘학번’은 외래키입니다.

즉 각 릴레이션의 입장에서 속성은 기본키가 되기도하고, 외래키가 되기도 합니다.

ex) <수강> 릴레이션의 ‘학번’에는 <학생> 릴레이션의 ‘학번’에 없는 값은 입력할 수 없습니다.

** NULL 값 ???? **

-> 데이터베이스에서 아직 알려지지 않았거나, 모르는 값으로서 “해당 없음” 등의 이유로 정보 부재를 나타내기 위해 사용하는, 이론적으로 아무것도 없는 특수한 데이터를 뜻합니다.

-> 철학적으로 “아무것도 없음”, “의미 없음”도 의미 있는 data라는 것입니다. ㅎㅎ

반응형

[DB] 키의 개념과 종류

728×90

데이터베이스 키의 개념과 종류

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

더보기 ※ 튜플 (Tuple) : 릴레이션 (테이블) 을 구성하는 각각의 행, 속성의 모임으로 구성된다. 파일 구조에서는 레코드와 같은 개념. 튜플의 수 = 카디널리티 = 기수 = 대응수

하나의 릴레이션에는 수많은 튜플들이 존재한다. 고객 정보를 저장한 릴레이션에는 많은 고객들에 대한 튜플들이 존재하며, 각 튜플들 간에는 중복되는 속성값이 발생할 수 있다.

예를 들어 이름, 나이, 사는 곳 등의 정보가 중복될 수 있는데, 이 때 각각의 고객(튜플)을 구분하기 위한 기준이 되는 속성이 필요하다. 이것을 우리는 “키” 라고 부르며, 하나의 속성 또는 여러 속성들의 집합으로 표현할 수 있다.

키의 종류로는 슈퍼키, 후보키, 기본키, 대체키, 외래키 가 있다.

최소성, 유일성

각각의 키에 대해 공부하기 전에, 최소성과 유일성이라는 개념에 대해 정리하고 넘어가려 한다.

유일성

유일성이란, 하나의 키값으로 튜플을 유일하게 식별할 수 있는 성질을 말한다. 위에서 언급했듯 여러 개의 튜플이 존재할 때 각각의 튜플을 서로 구분할 수 있는 속성이 존재해야 한다. 한 마디로 말하자면, 각각의 튜플은 유일해야 한다는 뜻이다. 예를 들어 어떤 릴레이션에 (주민번호, 나이, 사는 곳, 혈액형) 이라는 속성이 존재한다고 하자. 이 때 나이, 사는 곳, 혈액형 은 모두 충분히 중복될 수 있는 속성들이다. 하지만 주민번호는 모두 다르기 때문에 주민번호 속성에서 중복은 절대 발생할 수 없다. 이 릴레이션에서 키는 주민번호로 지정될 것이며, 이렇게 각각의 튜플을 구분할 수 있는 성질을 유일성이라고 표현한다.

최소성

최소성이란, 키를 구성하는 속성들 중 가장 최소로 필요한 속성들로만 키를 구성하는 성질을 말한다. 쉽게 말해, 키를 구성하고 있는 속성들이 진짜 각 튜플을 구분하는 데 꼭 필요한 속성들로만 구성되어 있는지를 의미한다. 예를 들어 위와 같이 (주민번호, 나이, 사는 곳, 혈액형) 릴레이션에서 (주민번호, 나이) 가 키로 지정이 되어 있다면, 당연히 이 키는 각 튜플을 구분할 수 있다. 주민번호와 나이가 모두 같은 사람은 세상에 존재하지 않기 때문에 그렇게 말할 수 있지만, 더 간단하게 주민번호가 중복되는 사람은 세상에 존재하지 않는다. 그렇기 때문에 (주민번호, 나이) 로 지정된 키는 최소성을 만족하지 않고 키에서 나이를 뺀 주민번호 만 키로 지정이 될 경우, 이 키는 최소성을 만족한다고 할 수 있다.

1. 슈퍼키 (Super Key) ; 유일성 O, 최소성 X

슈퍼키는 유일성의 특성을 만족하는 속성 또는 속성들의 집합을 의미한다.

키 값이 같은 튜플은 존재할 수 없다. 예를 들어 (고객 아이디) 의 경우 아이디가 같은 고객은 없기 때문에 슈퍼키가 될 수 있다. 하지만 (직업, 나이, 등급) 의 경우 나이, 직업, 등급이 같은 고객은 충분히 있을 수 있기 때문에 슈퍼키로 사용할 수 없다. 하지만 (고객 아이디, 직업, 나이, 등급) 의 경우는 고객 아이디가 각 튜플을 구분할 수 있는 속성이기 때문에 슈퍼키가 될 수 있다. 이처럼 슈퍼키는 유일성은 만족하지만 최소성은 만족하지 않는 키를 의미한다.

2. 후보키 (Candidate Key) ; 유일성 O, 최소성 O

후보키는 슈퍼키 중 최소성을 만족하는, 즉 유일성과 최소성을 모두 만족하는 속성 또는 속성들의 집합이다. 위의 슈퍼키에서 들었던 예시에서 (고객 아이디, 직업, 나이, 등급) 은 각 튜플을 유일하게 식별할 수 있으므로 유일성은 만족한다. 하지만 여기서 직업, 나이, 등급 정보가 굳이 필요할까? 이 속성들은 튜플 간에 중복되는 속성값을 가지고 있고, 이 속성들이 포함되어 있지 않은 (고객 아이디) 만으로도 튜플의 식별에는 전혀 문제가 되지 않는다. 그러므로 위의 키에서 직업, 나이, 등급을 제외한 (고객 아이디) 는 최소성을 만족하며 후보키가 될 수 있다.

3. 기본키 (Primary Key) ; 후보키 중 선택받은 키

이렇게 각 튜플을 구별할 수 있으며 유일성과 최소성을 모두 만족하는 후보키가 구해졌다. 후보키는 한 테이블 내에서 여러 개 존재할 수 있는데, 여기서 우리는 여러 후보키 중 하나를 택해 사용해야 하며 여기서 선택된 키가 기본키가 된다. 하지만 모든 후보키가 기본키가 되는 것은 아니고 기본키를 선택함에 있어서 다음의 기준을 통과해야 한다.

NULL 값을 가질 수 있는 속성이 포함된 후보키는 기본키로 부적절하다. 값이 자주 변경될 수 있는 속성이 포함된 후보키는 기본키로 부적절하다. 단순한 후보키를 기본키로 선택한다.

속성

NULL 값을 가질 수 없다. (개체 무결성의 첫번째 조건)

기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없다. (개체 무결성의 두번째 조건)

4. 대체키 (Alternate Key) ; 후보키 중 선택받지 못한 키

대체키는 기본키로 선택받지 못한 후보키들이다. 이름에서 알 수 있듯 대체키는 기본키를 대신할 수 있는 자격은 있지만, 3-1 ~ 3-3 의 조건에 부합하지 않아 기본키로 선택받지 못한 키들을 의미한다. 대체키는 ‘보조키’ 라는 이름으로도 불린다.

5. 외래키 (Foreign Key) ; 다른 릴레이션의 기본키를 참조

외래키는 관계를 맺고 있는 릴레이션 R1, R2 에서 릴레이션 R1 이 참조하고 있는 릴레이션 R2 의 기본키와 같은 R1 릴레이션의 속성이다. 다시 말해 다른 릴레이션의 기본키를 그대로 참조하는 속성 또는 속성들의 집합이 외래키이다. 외래키는 릴레이션 간의 관계를 올바르게 표현하기 위해 필요하다.

속성

외래키로 지정되면 참조 테이블의 기본키에 없는 값은 입력이 불가하다. (참조 무결성 조건)

예를 들어, 다음과 같은 고객, 주문 릴레이션이 각각 있다고 하자.

더보기 ※ 기본키는 Bold 로, 외래키는 Underlined 로 표시했다.

고객 ( 고객 아이디 , 고객 이름, 나이, 등급, 직업, 적립금)

, 고객 이름, 나이, 등급, 직업, 적립금) 주문 (주문번호, 주문 고객 , 제품, 수량, 단가, 주문 일자)

위의 릴레이션에서 고객 릴레이션은 사이트에 가입한 고객에 대한 데이터를 가지고, 주문 릴레이션은 어떤 제품을 어떤 고객이 주문했는지에 대한 데이터를 다룬다. 주문 릴레이션에는 어떤 고객이 어떤 제품을 ‘언제, 얼마나, 얼마에’ 에 대한 정보가 있을 것이다. 그리고 각 튜플을 구분할 수 있는 기본키(주문번호)가 있을 것이다.

여기서 주문 릴레이션은 고객의 정보를 모두 저장할 필요가 없다. 단지 고객 릴레이션에서 튜플을 구분할 수 있는 기본키가 되는 속성만을 가지고 있으면 된다. 이렇게 고객 릴레이션의 기본키(고객 아이디)를 참조하는 주문 릴레이션의 속성을 외래키( 주문 고객 )라 한다. 외래키는 관계를 맺은 릴레이션의 기본키를 참조하고 있으며, 이 때 중요한 점은 기본키와 기본키를 참조하는 외래키의 도메인 또한 반드시 같아야 한다는 것이다.

더보기 ※ 도메인 (Domain) ; 데이터베이스에서 도메인이란, 릴레이션에 포함된 각 속성들이 가질 수 있는 값의 집합이라 할 수 있다. 도메인이라는 개념이 필요한 이유는 릴레이션에서 본래 의도했던 속성값들만 데이터로 저장되고 관리하기 위해서이다. 예를 들어 ‘성별’ 이라는 속성이 있을 때 이 속성이 가질 수 있는 값은 ‘남’ 또는 ‘여’ 일 것이다. 데이터베이스 설계자가 성별의 도메인으로 ‘SEX’ 를 정의하고 그 값을 ‘남’, ‘여’ 로 지정하면 ‘성별’ 이라는 속성은 ‘SEX’ 도메인에 존재하는 값만을 가질 수 있다. 이렇게 도메인을 정의하면 사용자들이 실수로 도메인 외의 값을 입력하는 것을 방지할 수 있다. 도메인의 이름은 속성의 이름과 같을 수도, 다를 수도 있고 하나의 도메인을 여러 속성에서 공유하는 것 또한 가능하다.

#Reference.

728×90

[DB] 📚 데이터베이스 키(KEY) 종류 🕵️ 정리

Key의 종류

슈퍼 키(Super Key) : 유일성 을 만족하는 키. 예를 들면, {학번 + 이름}, {주민등록번호 + 학번}

: 을 만족하는 키. 예를 들면, {학번 + 이름}, {주민등록번호 + 학번} 복합 키(Composite Key) : 2개 이상 의 속성(attribute)를 사용한 키.

: 의 속성(attribute)를 사용한 키. 후보 키(Candidate key) : 유일성 과 최소성 을 만족하는 키. 기본키가 될 수 있는 후보이기 때문에 후보키라고 불린다. 예를 들면, 주민등록번호, 학번 등

: 과 을 만족하는 키. 기본키가 될 수 있는 후보이기 때문에 후보키라고 불린다. 예를 들면, 주민등록번호, 학번 등 기본 키(Primary key) : 후보 키에서 선택된 키. NULL값이 들어갈 수 없으며, 기본키로 선택된 속성(Attribute)은 동일한 값이 들어갈 수가 없다.

: 후보 키에서 선택된 키. NULL값이 들어갈 수 없으며, 기본키로 선택된 속성(Attribute)은 동일한 값이 들어갈 수가 없다. 대체 키(Surrogate key) : 후보 키 중에 기본 키로 선택되지 않은 키.

: 후보 키 중에 기본 키로 선택되지 않은 키. 외래 키(Foreign Key): 어떤 테이블(Relation) 간의 기본 키(Primary key)를 참조하는 속성이다. 테이블(Relation)들 간의 관계를 나타내기 위해서 사용된다.

슈퍼키(Super Key )

– 7조라는 팀에 팀원은 4명이 있다. 이 4명을 구분할 수 있는 것은 절대 겹치지 않는 학번 일수도 있고, 주민번호일 수도 있다.

– 이름과 나이를 묶어서 하나의 속성으로 만드는 것도 가능하다. 이름과 나이를 합쳐서 7조안에서 중복만 되지 않으면 가능하기 때문이다. 이름과 나이를 합쳐서 4명을 구분할 수 있으면 슈퍼키가 될 수 있다.

– 학번과 주민번호를 묶어서 슈퍼키로 만들수도 있고, 학번과 주민번호과 이름을 합쳐서 슈퍼키로도 만들수 있고, 학번과 주민번호과 이름과 나이를 합쳐서 슈퍼키를 만들수도 있다. 어떤 속성끼리 묶던 중복값이 안나오고 서로 구별만 할 수 있으면 된다.

후보키(C andidate Key )

– 위에서 말했듯아, 이 4명을 구분하는 슈퍼키들이 모여 있는데, 슈퍼키들 중에서 속성은 최소한의 갯수로 4명을 구분할 수 있어야 후보키가 될 수 있다.

– 학번 슈퍼키와 주민번호 슈퍼키는 속성들이 각 1개씩 이루어져 있다. 하지만 이름+나이 슈퍼키는 이름과 나이를 묶어서 2개의 속성으로 되어 있다. 이름+나이 슈퍼키는 2개 이므로 각 1개의 속성인 주민번호와 학번 슈퍼키가 최소성을 만족한다고 할 수 있다.

– 따라서 이름+나이 슈퍼키는 갯수가 다른 것보다 많기 때문에 최소성을 만족하지 못해서 후보키가 될 수 없다.

기본키(Primary Key)

– 후보키들 중에서 하나를 선택한 키로 최소성과 유일성을 만족하는 속성이다.

– 테이블에서 기본키는 오직 1개만 지정할 수 있다.

– 기본키는 NULL 값을 절대 가질수 없고, 중복된 값을 가질 수 없다.

대체키(Alternate Key)

– 후보키가 두개 이상일 경우 그 중에서 어느 하나를 기본키로 지정하고 남은 후보키들을 대체키라한다.

– 후보키로 학번과 주민번호가 뽑혔고, 둘 중에서 기본키는 학번이 되었다. 학번이 기본키가 되고 남은 후보키인 주민번호는 대체키가 될 수 있다. 학번 기본키가 없어지게 되면 주민번호는 없어진 기본키를 대체할 수 있게된다.

외래키(Foreign Key)

– 참조 될 테이블(A)이 먼저 만들어지고 참조하는 테이블(B)에 값이 입력되어야 한다.

– 이때, 참조될(A) 열의 값은 참조될(A) 테이블에서 기본키(Primary Key)로 설정되어 있어야한다.

– 외래키는 참조되는 테이블의 기본키와 동일한 키 속성을 가진다.

– 참조되는 부모테이블이 먼저 생성된 뒤 데이터를 넣고, 참조하는 자식 테이블이 다음에 생겨야된다.

– 부모 테이블 먼저 삭제될 수 없다. 왜냐하면 부모테이블을 참조하는데 부모테이블이 삭제되면 자식테이블은 참조하는 것이 없어지기 때문에 외래키 오류가 생긴다. 따라서 외래키 관계에서 부모테이블을 삭제하려면 자식테이블 먼저 삭제한 후 부모테이블을 삭제해야한다.

– 아래 사진을 보자. 부모 테이블은 학생 테이블이고, 자식 테이블은 수강 테이블이다.

– 학생테이블은 학번이 기본키이자 참조되는 참조키이다.

– 수강테이블은 학번이 참조하는 키이자 외래키이다.

So you have finished reading the 데이터 베이스 키 topic article, if you find this article useful, please share it. Thank you very much. See more: db 외래키, Candidate key 뜻, Super key, Candidate key, 후보키, 데이터베이스 부분키, 슈퍼키, 관계형 데이터베이스 외래 키, Primary key Foreign key

Leave a Comment