개요
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 |
---|