
JPA 덕분에 DB에서 삽질한 이야기
4
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
JPA와 UUID 컬럼 문제 해결기
이 게시물은 JPA를 사용하며 UUID 타입의 ID 컬럼을 저장했음에도 조회가 되지 않는 문제를 다룹니다.문제 발생 및 재현
- UUID를 ID로 지정한 엔티티의 저장 후 조회 실패
- 테스트 환경(H2와 MySQL) 차이에 따른 문제 재현
문제 원인 분석 및 해결
- UUID 컬럼의 길이가 BINARY(255)로 설정되어 조회 실패
- 컬럼 길이를 BINARY(16)으로 변경하여 문제 해결
- MySQL의 BINARY 타입은 지정 길이만큼 오른쪽 패딩 처리함을 확인
검증 및 참고
- MySQL 공식 문서와 RFC 4122 UUID 표준 참고
- 직접 테이블 생성 및 쿼리로 패딩 문제 재현
- 패딩 포함 조건으로 조회 시 정상 동작 확인