inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

데이터베이스 중급(Modeling)

섹션 1 퀴즈

섹션 1 퀴즈 3번 문제에 질문이 있습니다.

78

뎅뚠

작성한 질문수 9

0

3번 문제입니다.
```
기본 키(Primary Key)는 반드시 고유하며 Null을 허용하지 않아야 합니다. 그렇다면 '후보 키(Candidate Key)'는 기본 키와 비교할 때 어떤 속성에서 차이가 있을 수 있나요?
```
이 문제에 대한 답입니다.
```
Null 허용 여부: 후보 키는 테이블 내에서 고유하게 레코드를 식별할 수 있는 속성들의 집합이지만, 기본 키로 선정되지 않은 후보 키는 경우에 따라 Null 값을 가질 수 있습니다.
```

후보키라는게 결국 PK(기본키)가 될 가능성이 있는 키라고 하셨는데, 그러면 Null허용이 되면 안되는거 아닌가요? 기본 키로 선정되지 않는 경우더라도요.

dbms/rdbms 데이터-엔지니어링

답변 2

0

이교준

후보키는 RDBMS에 명시적으로 Primary Key로 지정하지 않았지만 개념상 후보가 될 수 있다는 뜻입니다. RDBMS에 이 컬럼이 후보키입니다라고 등록하지는 않습니다. 반드시 등록해야 하는 것은 기본키, 외래키 두개입니다.
한 테이블 속성을 보면 핸폰, 주소, 주민번호 등 후보키들이 보입니다. 어느것이 pk가 될지는 그 업무의 성격에 따라서 달라질 수 있습니다. 다만, 보편적 테이블 설계라면 대부분 dummy 키를 사용하는 것이 일반적이긴 합니다.

0

뎅뚠

제가 RDBMS에 물리적으로 후보키가 등록되지 않는다는 점을 생각안했었네요. 바로 이해됐습니다.
감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
임형준님, 질문에 답변 드리겠습니다.

후보 키(Candidate Key)는 테이블에서 기본 키(Primary Key)로 선정될 수 있는 모든 속성을 의미하며, 일반적으로 후보 키는 고유한 값이어야 하고 Null을 허용하지 않아야 합니다. 하지만 질문에서 제시된 정보와 같이 후보 키로 사용할 수 있는 조건 중 하나인 “기본 키로 선정되지 않은 경우”라는 점이 고려되면, 일부 시스템이나 컨텍스트에서 후보 키가 Null을 허용할 수 있는지를 검토하는 경우도 있을 수 있습니다.

기본적으로 후보 키도 기본 키가 될 잠재성을 가지므로 Null 값이 허용되지 않는 것이 일반적입니다. 하지만 특정 사례나 환경에 따라서 구현 관점에서 후보 키가 다르게 다뤄질 수 있다는 혼동이 생긴 걸로 보이네요.

추가적으로 이해하기 위해서 실질적인 구현 관계에 따라 후보 키의 충족 조건이 달라질 수 있다는 점도 유념하시기 바랍니다. 또 다른 질문이 생기면 언제든지 문의 주세요!

참조 링크: 데이터베이스 관련 참조

차단 등 검증 로직의 위치

0

17

2

하단 파일이 열리지 않습니다

0

19

1

ssh-keygen -t rsa -P "" 등 ssh 암호화? 는 하둡에서 필수인가요?

0

22

2

일대일 fk 위치

0

26

1

GROUP BY, HAVING 실습 1번문제

1

26

2

수업에서 사용하는 툴 질문드려요

0

35

2

다음 강의는 언제쯤 나올까요?

0

43

2

강의자료 문의

0

20

1

마인드맵 사용 프로그램

0

25

1

강의 교재가 어디에 있나요?

0

238

1

M:N관계 강의에서 말씀하신 표현

0

245

2

릴레이션 개념

0

286

2

서가,책 primary key 설정에 대한 질문입니다.

0

270

2

선생님 도메인이란게 뭔가요???

0

439

3

15:29 수강 테이블 BCNF 질문

0

273

2

수업중 99.99%의 정밀도에 관한 설명

0

295

2

3정규화

0

235

2

PK에 임의의 식별자(정수형 시퀀스값)부여에 관한 질문드립니다.

0

425

2

강의자료 section 04 인덱스 및 최적화

0

423

3

json 구조의 데이터를 저장할 때 재귀 관계가 맞는 방법인지 궁금합니다.

0

455

2

M:N 관계 테이블의 상속형 PK 질문

0

547

2

데이터를 넣으려고 하면 오류가 발생합니다.

0

470

1

두 FK를 묶어서 PK로 하는 경우에...

0

521

1

SEQ auto increment

0

423

1