[Oracle] 문자셋(characterset) 확인 및 변경
"[Oracle] 문자셋(characterset) 확인 및 변경"
※ 참고 및 주의사항 (문자셋 변경 전 꼭!! 읽어봐야 함)
- CENTOS7에 ORACLE을 설치함 (아래 내용은 윈도우여도 동일한 것 같다.)
- ORACLE에 SYSDBA로 접속
- 데이터베이스에 데이터가 있는 경우 문자셋 변경은 매우 위험할 수 있다.
1. 문자셋 확인
select * from nls_database_parameters where parameter = 'NLS_CHARACTERSET'; // nls_database_parameters 테이블에서 캐릭터셋만 조회 |
2. 문자셋 변경
SQL> update props$ set value$='KO16MSWIN949' where name='NLS_CHARACTERSET'; // value에 변경하려는 문자셋 입력 SQL> update props$ set value$='KO16MSWIN949' where name='NLS_NCHAR_CHARACTERSET'; // value에 변경하려는 문자셋 입력 SQL> commit; // 변경된 내용 저장 SQL> shutdown immediate // 오라클 서버 종료 (immediate: 현재 처리 중인 것들은 모두 stop) SQL> startup // 서버 시작 |
참고) 한글을 지원하는 문자셋(캐릭터셋)
* KO16KSC5601 완성형 한글- 일반적으로 많이 사용되며 2350자의 한글, 4888자의 한자, 히라카나, 카타카나, 영문 및 각종 기호를 포함하고 있음. (한글바이트: 2byte) * KO16MSWIN949 조합형 한글- 완성형을 포함하여 11172자의 한글을 표현함 (한글바이트: 2byte) * AL32UTF8 Unicode의 CES 중 하나- 11172자의 한글을 지원 (한글바이트: 3byte) |
만약!!!! 오류가 발생한다면??