본문 바로가기
Tibero

Tibero Union 사용시 "JDBC-11022:Values are from incompatible data types" 에러 처리 방법

by 천지조율 2024. 3. 11.

개요

Tibero에서 "Union"을 사용하는데 "JDBC-11022:Values are  from incompatible data types"에러가 발생하였습니다.

 

상세 내용

Tibero에서 "UNION"아래와 같이 사용하는데 에러가 발생하였습니다.

SELECT 
	"Korea" AS KName 
FROM 
	DUAL
    
UNION ALL

SELECT 
	KNmae 
FROM 
	Contry
WHERE 1=1
    AND ContryType = "A"

KName 이 varchar(16) 이어서 잘 동작할 거라 생각하고 작업하였으나 동작하지 않았습니다.

몇 번 삽질을 통해 알게 된 내용은 "UNION" 사용 시 컬럼의 데이터 타입까지 설정을 해주어야 합니다.\

자동으로 타입을 맞추어 동작할거라 착각을 하여 발생한 문제였습니다.

 

수정본

SELECT 
	CAST("Korea" as NVARCHAR(16)) AS KName 
FROM 
	DUAL
    
UNION ALL

SELECT 
	KNmae 
FROM 
	Contry
WHERE 1=1
    AND ContryType = "A"

 

KName 컬럼이 NVARCHAR(16)이어서 "CAST" 연산자( CAST 연산자 사용 방법 )를 통해서 형변환을 해주면 됩니다.

 

'Tibero' 카테고리의 다른 글

Tibero에서 CAST 연산자 사용 방법  (0) 2024.03.11