1) 캐릭터셋 확인
SELECT *
FROM nls_database_parameters
WHERE parameter = 'NLS_CHARACTERSET'
or parameter = 'NLS_NCHAR_CHARACTERSET'
AL32UTF8
- 한글 한자당 3바이트
- AL32UTF8: 한글 11,172자이며 UTF8과 다른점은 내셔널 캐릭터셋으로 설정이 불가능
AL16UTF8
- KO16KSC5601 :한글 완성형 2,350자지원 글자당 2바이트
- KO16MSWIN949: KO16KSC5601+확장 8822자 지원, 글자당 2바이트
- UTF8: 한글 11,172자 글자당 3바이트
* 3바이트 => 2바이트 한글로 변경하는 방법
select * from nls_database_parameters;
update sys.props$ set value$='KO16MSWIN949' where name='NLS_CHARACTERSET';
update sys.props$ set value$='KO16MSWIN949' where name='NLS_NCHAR_CHARACTERSET';
update sys.props$ set value$='AMERICAN_AMERICA.KO16MSWIN949' where name='NLS_LANGUAGE';
* 변경후 : 오라클 재부팅
#> /etc/init.d/oracle-xe restart
# DATA Base CharSet 변경 (이걸안하면 sqlgate 같은 gui 클라이언트 에서 스키마 보기가 안됨)
#> sqlplus 'sys / as sysdba'
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER DATABASE CHARACTER SET KO16MSWIN949;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP;
[출처] - https://gompangyi.tistory.com/122
'Database > Oracle' 카테고리의 다른 글
[Oracle] 오라클 날짜형식 년월일 표기 (0) | 2020.03.03 |
---|---|
[Oracle] 알아두면 좋은 쿼리 (0) | 2020.02.27 |
[Oracle] 프로시져 생성(간단설명) (0) | 2019.07.09 |
[Database] 논리적단계의 정규화 (0) | 2017.02.28 |
[Database] 논리적 모델링 (0) | 2017.02.27 |