반응형
츄르사려고 코딩하는집사입니다.
JDBC-8056:Invalid number of columns in query. 해결 방법
JDBC-8056:Invalid number of columns in query. 이 문제는 2개의 SELECT 문을 UNION ALL을 했을 때 발생했다.
UNION ALL을 하게 되면, 각 SELECT 절의 컬럼의 갯수와 타입이 맞아야 한다.
그래서, 쿼리를 봤는데 SELECT 절의 컬럼의 갯수가 맞지 않아 발생했다.
<select id="TEST" parameterType="hashmap" resultType="DataMap">
SELECT ST.NO AS NO
ST.NAME AS NAME
FROM STUDENT ST
UNION ALL
SELECT TR.NO AS NO
TR.NAME AS NAME
FROM TEACHER TR
</select>
컬럼의 갯수를 맞춰줘야 하고, 컬럼의 타입 또한 맞춰야 한다.
즉, VARCHAR은 VARCHAR로 컬럼의 타입을 맞춰야 한다.
위의 코드처럼, UNION ALL 할 때에는 꼭 컬럼의 갯수와 컬럼의 타입을 맞춰줘야 한다.
반응형
최근댓글