강의

멘토링

로드맵

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

김상형님의 프로필 이미지
김상형

작성한 질문수

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

쇼핑몰 DDL과 DB 만들기

id bigint unsigned

작성

·

4

0

테이블 만드실 때 id의 타입을 bigint 로 하고 unsigned는 선언하지 않으셨는데, 굳이 필요 없어서 사용하지 않으신걸까요?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. 김상형님.

데이터베이스 설계에서 id 타입을 bigint로 설정했지만 unsigned 속성을 사용하지 않은 이유가 궁금하셨군요. unsigned는 양수만 허용되게 만들어 데이터의 최대 범위를 확장할 수 있지만, 이를 꼭 사용해야 하는 것은 아닙니다. 설계 시 주로 고려하는 요소는 다음과 같습니다:

  1. 데이터 범위 고려: unsigned를 사용하면 양수로만 범위가 확장되지만, 만약 음수 값을 가질 일이 없다면 unsigned를 사용하는 것이 범위 측면에서 유리합니다.

  2. 일관성: 전체적인 시스템의 일관성을 유지하기 위해 같은 팀이나 프로젝트에서는 특정한 컨벤션이나 규칙을 따르는 경우가 많습니다. unsigned를 사용하지 않은 이유가 프로젝트 내에서 모든 ID에 대해 동일한 방식으로 처리하려는 경우일 수도 있습니다.

  3. 제약사항 회피: 특정 데이터베이스나 ORM 라이브러리에서는 unsigned 속성이 제대로 지원되지 않는 경우도 있습니다. 이런 경우 성능이나 호환성 문제를 피하기 위해 unsigned를 생략할 수 있습니다.

관련된 유사한 질문과 답변:
- id bigint unsigned 사용에 대한 질문에서 David님이 다른 상황에서도 unsigned를 사용하지 않은 이유를 설명했습니다. 이 답변이 맥락을 이해하는데 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

김상형님의 프로필 이미지
김상형

작성한 질문수

질문하기