ORACLE NLS_LANG, NLS_LANGUAGE, NLS_TERRITORY,[오라클교육/오라클/ORACLE강좌/오라클교육잘하는곳/오라클교육추천/ORACLE실무교육/ORACLE/ORACLE교육/ORACLE학원/오라클실무교육]
NLS_LANG : 오라클 데이터베이스의 환경변수 값이 아니라 사용자 환경을 Oracle DB 알려주는 역할을 하는
환경변수.
NLS_LANG = [언어]_[영역].[문자셋]
<language>_<Territory>.<client characterset>
예) AMERICAN_ARERICA.KO16KSC5601, AMERICAN_AMRRICA.UTF8, KOREAN_KOREA.KO16KSC5601
<language>_<Territory>.<client characterset>
예) AMERICAN_ARERICA.KO16KSC5601, AMERICAN_AMRRICA.UTF8, KOREAN_KOREA.KO16KSC5601
언어 :현재 사용자가 사용하는 언어적 특성을 결정짓는 값
문자셋, 정렬방식, 날짜 표기에 사용되는 기호(년/월/일, YYYY/MM/DD)
Default 값은 AMERICAN 이다.
실제 날짜 표기(TO_CHAR,TO_DATE 실행시 - 월요일, MON 으로 표시를 좌우하는 NLS_DATE_FORMAT 값은 NLS_LANGUAGE 을 따른다.
영역 :현재 사용자 언어의 영역의 특성을 결정짓는 값
Language 값만 설정하면, Language 값을 따른다. ( KOREAN ==> KOREA )
문자셋 :현재 사용자의 시스템이 인식할 수 있는 문자셋의 값
만약에 Windows Client에서 한국어 환경을 사용하는 경우 NLS_LANG
값을′KOREAN_KOREA.KO16MSWIN949′로
유닉스 Client에서 한국어를 입출력한다면 다음과 같이 NLS_LANG을 ′KOREAN_KOREA.KO16KO16KSC5601′로 설정 할 수 있다.
유닉스 Client에서 한국어를 입출력한다면 다음과 같이 NLS_LANG을 ′KOREAN_KOREA.KO16KO16KSC5601′로 설정 할 수 있다.
NLS관련 주요 변수
NLS_TERRITORY : 영역 설정 - NLS_LANG 변수값에 의해 자동 설정
설정 방법예 : ALTER SESSION SET NLS_TERRITORY = 'KOREA'
설정 방법예 : ALTER SESSION SET NLS_TERRITORY = 'KOREA'
NLS_LANGUAGE : 언어 설정- NLS_LANG 변수값에 의해 자동 설정 초기화변수
설정 방법예 : ALTER SESSION SET NLS_TERRITORY = 'KOREAN'
설정 방법예 : ALTER SESSION SET NLS_TERRITORY = 'KOREAN'
NLS_LANG : 언어,영역, 캐릭터셋 설정 - 기본값은 ′AMERICAN_AMERICA.US7ASCII′
설정 방법예 : OS 환경변수로 설정
설정 방법예 : OS 환경변수로 설정
NLS_COMP : SQL에서의 비교 방식(<,>,=) 설정 - BINARY값으로 비교
설정 방법예 : ALTER SESSION SET NLS_COMP =''
설정 방법예 : ALTER SESSION SET NLS_COMP =''
NLS_SORT : 문자열의 정렬방법 설정 - NLS_LANGUAGE값에 따라 결정
설정 방법예 : ALTER SESSION SET NLS_SORT = 'KOREAN_M'
설정 방법예 : ALTER SESSION SET NLS_SORT = 'KOREAN_M'
[NLS_LANG 지정 방법]
1. SESSION LEVEL
- select * from nls_session_parameters 로 확인 가능
1. SESSION LEVEL
- select * from nls_session_parameters 로 확인 가능
- 변경 방법1.
SQL> select * from nls_session_parameters
where PARAMETER in ('NLS_LANGUAGE','NLS_TERRITORY','NLS_DATE_FORMAT','NLS_DATE_LANGUAGE','NLS_SORT');
SQL> select * from nls_session_parameters
where PARAMETER in ('NLS_LANGUAGE','NLS_TERRITORY','NLS_DATE_FORMAT','NLS_DATE_LANGUAGE','NLS_SORT');
PARAMETER VALUE
------------------------------ ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
------------------------------ ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
SQL> SELECT SYS_CONTEXT('USERENV','LANGUAGE') "NLS SET" from
dual;
NLS SET
--------------------------------------------------------------------------------
AMERICAN_AMERICA.US7ASCII
-- 변경
SQL> ALTER SESSION SET NLS_LANGUAGE='KOREAN';
NLS SET
--------------------------------------------------------------------------------
AMERICAN_AMERICA.US7ASCII
-- 변경
SQL> ALTER SESSION SET NLS_LANGUAGE='KOREAN';
- 변경 방법2.
UNIX, WINDOWS 환병변수에서 NLS_LANG 값을 변경한다.
UNIX - export NLS_LANG=American_America.US7ASCII 설정
Windows - SET NLS_LANG=American_America.US7ASCII 설정
2. INSTANCE LEVEL
- SELECT * FROM NLS_INSTANCE_PARAMETERS ; 를 통해서 확인 가능
- SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME LIKE '%nls%';
Windows - SET NLS_LANG=American_America.US7ASCII 설정
2. INSTANCE LEVEL
- SELECT * FROM NLS_INSTANCE_PARAMETERS ; 를 통해서 확인 가능
- SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME LIKE '%nls%';
3. DB LEVEL
- SELECT * FROM NLS_DATABASE_PARAMETERS ;
- SELECT NAME, VALUE$ FORM SYS.PROPS$ WHERE NAME LIKE '%NLS%' ;
- SELECT * FROM NLS_DATABASE_PARAMETERS ;
- SELECT NAME, VALUE$ FORM SYS.PROPS$ WHERE NAME LIKE '%NLS%' ;
- SELECT * FROM V$NLS_PARAMETERS 에서 확인 가능
댓글 없음:
댓글 쓰기