프로그래밍/JPA

Unknown column '...' in 'filed list' (SELECT시 필드를 찾지 못함!)

승민아 2023. 7. 13. 01:26

현재 내 Poster(게시글) 엔티티의 댓글 개수를 위한 commentCnt 변수가 있다.

Poster 클래스

 

DB에 만든 poster 테이블의 스키마다. 여기서 보면 댓글 개수를 위해 commentCnt 컬럼을 만들었다.

Poster 테이블

 

 

 

저번에도 이 문제로 아하!하고 넘어갔는데 또 이런 문제가 발생했다.

 

JPA에서 SELECT시 DB에 컬럼명을 comment_cnt로 조회를한다.

나는 필드명을 commentCnt로 했고 기본값으로 필드명과 동일하게 매핑이 될 줄 알았다...!

하지만 자바의 카멜 표기법은 DB에서는 _(언더바)로 변환된다.

또한 DB에서는 컬럼명을 commentCnt가 아닌 comment_cnt로 표기하는게 국룰이다!

 

해결하기위해 아래의 방법을 수행하여 정확히 매핑하자.

1. DB의 commentCnt 컬럼명 변경

ALTER TABLE poster CHANGE commentCnt comment_cnt int

 

2. 클래스의 commentCnt를 DB의 comment_cnt와 매핑