Database/Oracle
2010/11/02 16:26
ORA-29275 : 부분 다중 바이트 문자
단순 SQL 문을 만들어서 조회를 하는데도 위와 같은 오류가 난다면,
1. 서버 ORACLE 환경
2. 로컬 윈도우의 오라클환경(CLIENT)
위 두개의 CHARACTERSET 을 확인해보자.
1. 서버 ORACLE 환경
- SELECT * FROM SYS.PROPS$
WHERE NAME = 'NLS_CHARACTERSET'
<결과>
NAME VALUE$ COMMENT$
---------------------------------------------------------
NLS_CHARACTERSET KO16KSC5601 Character set
2. 로컬 윈도우의 오라클환경(CLIENT)
- 레지스트리 편집기에서 "NLS_LANG" 을 찾아보자.
나 같은 경우는 찾기를 했더니 요기에 있더라
HKEY_LOCLA_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10G_home1
NLS_LANG 값이 KOREAN_KOREA.KO16MSWIN949 이거로 되어있다.
만약 위와 같이 1/2의 CHARSET 이 다르다면 ORA-29275 에러를 만나게 되리라. ^^
그렇다면 어떻게 한다.
잘 쓰고 있는 서버에 CHARSET 을 변경한다는건 너무 무모한 짓이고
로컬컴터의 레지스트리를 바꾸어주자. ^^
서버 ORACLE 환경의 CHARSET 으로 ...
NLS_LANG 값을 KOREAN_KOREA.KO16KSC5601 로 바꾸자.
다시 한번 SQL 을 날려보라~~
잘 될것이다.
