database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
ㆍInformix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Informix Q&A 3181 게시물 읽기
No. 3181
인포믹스에서 한글 관련 문의드립니다.
작성자
오은혜(goodohne)
작성일
2010-08-31 16:27ⓒ
2010-08-31 16:29ⓜ
조회수
57,554

현재 jdbc를 이용하여 db에 접속하고 있습니다.

클라이언트 - 리눅스 (데몬서버) - DB

db의 로케일은 en_us.utf8 로 되어있구요, jdbc 연결 설정에도 DB_LOCALE=en_us.utf8;CLIENT_LOCALE=en_us.utf8;
를 추가해서 접속을 하고 있습니다...만,

자바 데몬이 실행되는 리눅스 서버의 로케일은 en_US, file.encoding 은 ISO8859-1로 되어있고,
데몬서버 자체는 windowXP (ko_kr, MS949 ) 에서 컴파일되어 실행만 리눅스에서 되는 상태입니다
(DB와 리눅스 서버의 locale 및  encoding 은 변경이 불가능 합니다)

db의 데이터를 select 하여 가져오면 클라이언트에서 깨진 한글을 볼 수가 있고, 자바 데몬서버의 로그파일을 확인해 봐도 한글이 깨진 상태로 기록되어 있습니다.
그리고 클라이언트에서 한글을 전송하면, 자바 데몬서버의 로그파일에는 한글이 정상적으로 보여지지만, An illegal character has been found in the statement.[-202]  에러가 발생하여 db에 insert를 하지 못하고 있습니다.

접속 프로퍼티는
jdbc:informix-sqli:// IP / DB명:INFORMIXSERVER= SERVER명;

DB_LOCALE=en_us.utf8;CLIENT_LOCALE=en_us.utf8;

NEWLOCALE=ko_kr,en_us;NEWCODESET=KSC5601,utf8,57372;

으로 설정하였습니다.
(참조 : http://door83.blog.me/80095922624 )

 

NEWLOCALE=ko_kr,en_us;NEWCODESET=KSC5601,8859-1,819; 또는

NEWLOCALE=en_us,en_us;NEWCODESET=8859-1,utf8,57372;

이렇게 해봐도 마찬가지 입니다.

그리고, 프로퍼티에 locale 과 codeset 설정을 하지 않았을 때에는 자바 소스 상에서
new String(data.getBytes("8859_1"), "KSC5601");
로 변환하는 걸로 시도해 보았습니다만 마찬가지 였습니다.

도대체.. 뭐가 문제일까요..?
조언 부탁드립니다..

[Top]
No.
제목
작성자
작성일
조회
3184raw device vs cook device
정민교
2010-10-20
6818
3183mysql 쿼리입니다. informix 로 변형좀 해주면 감사하겠습니다.
왕희원
2010-10-13
5379
3182informix 9 버젼 다운로드
유승백
2010-09-26
6402
3181인포믹스에서 한글 관련 문의드립니다.
오은혜
2010-08-31
57554
3180informix에서 내용의 쿼리문으로 SP(Stored Procedure)를 만들고 싶어요. [1]
친구사이
2010-08-17
7825
3179(광고하실분대환영)
마이클잭슨
2010-07-20
5518
3178간단한 프로시져 입니다..에러가;
밤새
2010-07-02
6156
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2022 DSN, All rights reserved.
작업시간: 0.055초, 이곳 서비스는
	PostgreSQL v14.2로 자료를 관리합니다