오류일지

[오류일지] Error attempting to get column '' from result set

개발로 먹고 살자 2022. 11. 8. 13:21

이번에 개발을 하다가 빌드 패턴을 사용하기 위해 lombok을 사용했다.

getter setter도 한 번에 처리가 가능하니 좀 더 편해졌다.

 

그런데 문제가 생겼다.

DTO를 만들어 사용하는데 자꾸 에러가 발생했다.

 

Error attempting to get column '' from result set

Cannot determine value type from string ''"

 

에러가 발생했는데 이유를 찾지 못해 삽질을 많이 했다.

 

나의 경우에는 Entity를 상속 받아 DTO를 사용했었는데 이번에 빌드 패턴을 공부하면서

구조를 바꿔 Entity는 Getter만 생성 후 그대로 두고 DTO만 그 때 그 때 필요한 데이터를

담아 사용하기로 했다.

 

이 과정에서 문제가 생긴 것인데 sql 데이터 값의 위치와 DTO에 생성한

변수들의 순서를 맞춰줘야 했다.

 

즉, DB와 1:1 매칭되어 있는 Entity와 변수 선언 순서가 같아야 한다는 것이다.

 

아래는 이해하기 쉽게 만든 예시이다.

자세히 보면 category_count와 category_path의 위치가 다르게 선언되어 있다.

 

 

실행하자마자 에러가 발생한다.

 

위치를 동일하게 설정했다.

 

 

에러 없이 잘 실행된다.

에러가 발생하는 문제는 다양한 이유가 있겠지만

나의 경우는 순서가 올바르지 않아 발생한 문제였다.