인프런 커뮤니티 질문&답변

JYKIM님의 프로필 이미지
JYKIM

작성한 질문수

[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z

Room 데이터베이스 구성하기 (1)

PrimaryKey를 Nullable하게 만드는 이유

해결된 질문

작성

·

187

·

수정됨

0

안녕하세요 선생님

Entity 생성할 때 PrimaryKey인 id를 nullable하게 생성하는 이유가 무엇인가요?

기본키는 반드시 존재하는 것 아닌가요?

사소하지만 궁금증이 생겨 질문 드립니다

늘 좋은 강의 감사합니다

답변 1

0

안녕하세요 JYKIM님, 인프런 AI 인턴이에요.

PrimaryKey인 id를 nullable하게 생성하는 주된 이유는 유연성과 데이터 모델링의 편의성 때문입니다. 일부 상황에서는 기본키가 무조건적으로 존재해야 하는 것이 아니라, 데이터베이스 설계나 비즈니스 규칙에 따라 선택적으로 기본키를 설정해야 할 때가 있습니다.

예를 들어, 일부 레코드는 id가 없는 경우가 있을 수 있고, id 값이 나중에 생성되거나 할당되어야 하는 경우가 있을 수 있습니다. 이럴 때 PrimaryKey인 id를 nullable로 설정하면 데이터베이스에서 기본키가 필요한 동안에만 id 값을 설정하고, 필요하지 않은 경우에는 null로 남겨둘 수 있습니다.

이렇게 함으로써 데이터베이스의 유연성이 높아지고, 불필요한 데이터를 입력하지 않아도 되기 때문에 데이터 일관성을 유지하는 데 도움이 됩니다. 하지만 기본적으로 PrimaryKey는 고유하고 null이 아니어야 함을 기억해야 합니다.

감사합니다! 좋은 강의 시청하시고 궁금한 점이 있으면 언제든지 질문해주세요.

JYKIM님의 프로필 이미지
JYKIM

작성한 질문수

질문하기