게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.
* 고객시스템명 : 공군
* GAUCE 버전 : 4
* WAS 종류(WebLogic 등등) :
* DB 종류 : 오라클
* 문의 유형(질문/요청/참조) :
* 내용 :
질문란을 찾아보니 비스산 질문이 있는데 답변이 서버쪽 헤더크기를 살펴보라는 답뿐이 없었습니다.
소스에서 헤더크기는 rs.getMetaData().getColumDisplaySize(col)로 잡아주었습니다.
이것이 경우에 따라.. 한글이 잘리기도 하고 안 잘리기도 합니다.
서버쪽과 클라이언트쪽 소스는 밑에 있고..
query문이
select '오징어' as cname, code_name
from code_table
의 결과가.
cname code_name
오징어 오징어
오징어 만두
오징어 꼴뚜기
일때
cname의 값은 한글이 깨지고
code_name의 값은 한글이 안 깨집니다.
이때 query문을
select to_nchar('오징어') as cname, code_name
from code_table
로 변겅하면 모두 깨지지 않습니다.
다른 방법으로는 첫번째 쿼리문으로 하여 깨질때.. header사이즈를
rs.getMetaData().getColumDisplaySize(col) * 2 로 두배로 잡아주면 정상적으로 나옵니다.
개인적인 생각으로는 컬럼값의 한글을 가지고 올때말고 임의적으로 가지고 올때마다.
to_nchar()룰 사용해야 한다는것은 버그이지 않을까 합니다.
모든 query의 임의적인 한글을 to_char()로 변경하지 않고 해결방안이 무었이 있나요?
서버쪽
ResultSet rs = null;
rs = pstmt.executequery();
...
...
dSet.put(rs.getMetaData().getColumnName(col), rs.getString(col), rs.getMetaData().getColumDisplaySize(col));
클라이언트쪽 자바스크립트
alert()ds.NameString(1, 'cname');