SlideShare a Scribd company logo
2
Most read
3
Most read
6
Most read
오라클 NLS 파라미터
오라클 NLS Parameters
NLS(National Language Support)는 언어 지원과 관련된 파라미터를 지칭하며
SQL*PLUS등에서 확인 하려면 다음과 같이 조회한다.
SQL> show parameter nls
NAME TYPE VALUE
----------------------- ------ --------
nls_calendar string //sysdate등에서 보이는 캘린더 데이터 포맷
nls_comp string BINARY //where절, PL/SQL안의 NLS데이터 비교 방법
nls_currency string
nls_date_format string
nls_date_language string
nls_dual_currency string
nls_iso_currency string
nls_language string AMERICAN
nls_length_semantics string BYTE
nls_nchar_conv_excp string FALSE
nls_numeric_characters string
nls_sort string
nls_territory string AMERICA
nls_time_format string
nls_time_tz_format string
nls_timestamp_format string
nls_timestamp_tz_format string
NLS_DATE_FORMAT이란?
테이블의 날짜형 칼럼에 값을 입력 시 DATE형으로 만들어 입력을 하거나 NLS_DATE_FORMAT에
맞는 문자열이라면 문자열로 입력이 가능하다. 가끔 날짜형에 문자를 넣을 때 FORMAT이 맞지
않아 애로사항이 있을 수 있으니 NLS_DATE_FORMAT 값을 알고 그 형식대로 문자열을 입력하면
된다.
실제 날짜 표기(TO_CHAR, TO_DATE 실행시) “월요일”, “MON” 으로 표시를 좌우하는
NLS_DATE_FORMAT 값은 NLS_LANGUAGE 을 따른다.
NLS_DATE_FORMAT은 현재 시스템의 기본 날짜 입출력 형태를 지정하는 파라미터 이며
TO_CHAR, TO_DATE 함수의 기본 DATE FORMAT이다.
SQL> select * from nls_session_parameters
2 where parameter = 'NLS_DATE_FORMAT';
PARAMETER VALUE
------------------- -----------------------------------------
NLS_DATE_FORMAT RR/MM/DD
SQL> select sysdate from dual;
SYSDATE
--------
16/09/07
SQL> create table datetest (
2 mydate date
3 );
테이블이 생성되었습니다.
SQL> insert into datetest values ('16/10/01');
1 개의 행이 만들어졌습니다.
SQL> insert into datetest values ('16-10-02');
1 개의 행이 만들어졌습니다.
SQL> insert into datetest values ('20161003');
1 개의 행이 만들어졌습니다.
SQL> insert into datetest values ('161004');
1 개의 행이 만들어졌습니다.
SQL> insert into datetest values ('10-06-2016');
insert into datetest values ('10-06-2016')
*
1행에 오류:
ORA-01830: 날짜 형식의 지정에 불필요한 데이터가 포함되어 있습니다
SQL> select * from datetest;
MYDATE
--------
16/10/01
……
-- NLS_DATE_FORMAT에 맞지 않는 문자열이라면 DATE형으로 형변환해서 입력하면 된다.
SQL> insert into datetest values (to_date('10-06-2016','dd-mm-yyyy'));
1 개의 행이 만들어졌습니다.
SQL> select * from datetest;
MYDATE
--------
16/10/01
……
16/10/06
-- NLS_DATE_FORMAT을 변경하여 현재 시스템의 날짜 입출력 포맷을 바꾸자.
SQL> alter session set nls_date_format='yyyy.mm.dd';
세션이 변경되었습니다.
SQL> select * from datetest;
MYDATE
----------
16.10.01
……
16.10.06
-- NLS_LANGUAGE값을 한국어로 바꾸자. NLS_DATE_FORMAT은 NLS_LANGUAGE값을 따른다.
SQL> alter session set nls_language='KOREAN';
세션이 변경되었습니다.
-- 요일을 단축형과 전체표기 방식으로 표시
SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL;
TO_CHAR(S TO_C
--------- ----
화요일 화
SQL> alter session set nls_language='AMERICAN';
Session altered.
SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL;
TO_CHAR(SYSDA TO_CHA
------------- ------
TUESDAY TUE
-- 월을 단축/축약형태로 표시(한글로 월표시는 단축형과 전체표기방식으로 표시하는 것이 같다.)
SQL> alter session set nls_date_format = 'YYYY-MON-DD';
세션이 변경되었습니다.
SQL> select hiredate from emp where rownum < 3;
HIREDATE
----------------
1980-12월-17
1981-2월 -20
-- 월을 전체표기 방식으로 표시하자.
SQL> alter session set nls_date_format = 'YYYY-MONTH-DD';
세션이 변경되었습니다.
SQL> select hiredate from emp where rownum < 3;
HIREDATE
--------------
1980-12월-17
1981-2월 -20
SQL> alter session set nls_language='AMERICAN';
Session altered.
-- 요일을 단축형과 전체표기 방식으로 표시
SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL;
TO_CHAR(SYSDA TO_CHA
------------- ------
SUNDAY SUN
-- 영문의 경우 단축형과 전체표기 방식이 다르다. 단축형은 3글자만 표시한다.
SQL> alter session set nls_date_format = 'YYYY-MON-DD';
Session altered.
SQL> select hiredate from emp where rownum < 3;
HIREDATE
--------------
1980-DEC-17
1981-FEB-20
SQL> alter session set nls_date_format = 'YYYY-MONTH-DD';
Session altered.
SQL> select hiredate from emp where rownum < 3;
HIREDATE
---------------------
1980-DECEMBER -17
1981-FEBRUARY -20
NLS_LANG, NLS_LANGUAGE, NLS_TERRITORY
NLS_LANG : 오라클 데이터베이스의 환경변수 값이 아니라 사용자 환경을 Oracle DB 알려주는 역
할을 하는 환경변수.
NLS_LANG = [언어]_[영역].[문자셋]
<language>_<Territory>.<client characterset>
예) AMERICAN_AMERICA.KO16KSC5601, AMERICAN_AMERICA.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.KO16KSC5601′로 설정 할 수 있다.

More Related Content

PPTX
Các thuật toán mã hóa
PPTX
Lefmost rightmost TOC.pptx
PPTX
Mealy Machine by Daniyal Khan
PDF
Tài liệu CSS tiếng việt cơ bản
PDF
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
PPTX
(오라클,SQL기초강좌)서브쿼리에서 사용되는 Any(SOME), ALL, EXISTS 연산자 이론 및 실습예문_오라클강좌,SQL,PLSQL...
PPTX
(오라클SQL기초강좌)상관 서브쿼리(Correlated Sub Query)
PDF
#2.SQL초보에서 Schema Objects까지_재직자/근로자환급/국비지원교육/IT실무교육/SQL기초교육/구로IT학원추천
Các thuật toán mã hóa
Lefmost rightmost TOC.pptx
Mealy Machine by Daniyal Khan
Tài liệu CSS tiếng việt cơ bản
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
(오라클,SQL기초강좌)서브쿼리에서 사용되는 Any(SOME), ALL, EXISTS 연산자 이론 및 실습예문_오라클강좌,SQL,PLSQL...
(오라클SQL기초강좌)상관 서브쿼리(Correlated Sub Query)
#2.SQL초보에서 Schema Objects까지_재직자/근로자환급/국비지원교육/IT실무교육/SQL기초교육/구로IT학원추천

Viewers also liked (17)

PDF
JPA 상속관계 매핑(@MappedSuperclass, @Inheritance,@DiscriminatorValue,@Discriminato...
PPTX
(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링
PDF
#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
PDF
#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
PDF
#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
PDF
#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
PDF
(국비지원학원/재직자교육/실업자교육/IT실무교육_탑크리에듀)#4.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
PDF
(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...
PDF
(스프링교육/마이바티스교육학원추천_탑크리에듀)#10.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
PDF
(IT실무교육/국비지원교육/자바/스프링교육추천)#15.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
PDF
[자바학원/스프링교육학원/마이바티스학원추천/구로IT학원_탑크리에듀]#7.스프링프레임워크 & 마이바티스 (Spring Framework, M...
PDF
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
PDF
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
PDF
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
PDF
(Spring Data JPA)식별자(@Id, Primary Key) 자동 생성, @GeneratedValue의 strategy 속성,Ge...
PDF
#30.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
PPTX
(SQL튜닝,오라클힌트강좌)구체화뷰(Materialized View)를 통한 그룹함수(SUM,MAX,MIN,AVG)의 튜닝_오라클 옵티마이...
JPA 상속관계 매핑(@MappedSuperclass, @Inheritance,@DiscriminatorValue,@Discriminato...
(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링
#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
(국비지원학원/재직자교육/실업자교육/IT실무교육_탑크리에듀)#4.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...
(스프링교육/마이바티스교육학원추천_탑크리에듀)#10.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
(IT실무교육/국비지원교육/자바/스프링교육추천)#15.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)
[자바학원/스프링교육학원/마이바티스학원추천/구로IT학원_탑크리에듀]#7.스프링프레임워크 & 마이바티스 (Spring Framework, M...
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
[#9.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)]_재직자환급교육/실업자환급교육/구로IT학원/스프링교...
(Spring Data JPA)식별자(@Id, Primary Key) 자동 생성, @GeneratedValue의 strategy 속성,Ge...
#30.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
(SQL튜닝,오라클힌트강좌)구체화뷰(Materialized View)를 통한 그룹함수(SUM,MAX,MIN,AVG)의 튜닝_오라클 옵티마이...
Ad

Similar to (오라클SQL강좌)오라클 NLS 파라미터_NLS_DATE_FORMAT, NLS_LANG, NLS_LANGUAGE, NLS_TERRITORY_구로디지털단지,오라클학원,SQL학원,SQL튜닝학원,DB무료교육,빅데이터무료취업교육 (20)

PDF
#12.SQL초보에서 schema Objects까지(구로IT학원/IT실무교육학원/국비지원IT교육학원/오라클교육/자바교육/닷넷교육학원추천)
PDF
IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지
PPT
PL/SQL - 10g Release1
PPTX
오라클 DB 아키텍처와 튜닝
PDF
제3장 sql plus에 대하여
PDF
제2장 데이터 조회하기
PDF
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
PDF
#6.SQL초보에서 Schema Objects까지_구로IT학원/오라클교육/자바교육/국비지원/재직자환급교육/내일배움카드/사업주위탁
ODP
2 mysql트랜잭션과잠금 v0
PPT
7.데이터수정
PDF
Fundamentals of Oracle SQL
PPTX
181215 MS SQL로 알아보는 데이터베이스
#12.SQL초보에서 schema Objects까지(구로IT학원/IT실무교육학원/국비지원IT교육학원/오라클교육/자바교육/닷넷교육학원추천)
IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지
PL/SQL - 10g Release1
오라클 DB 아키텍처와 튜닝
제3장 sql plus에 대하여
제2장 데이터 조회하기
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
#6.SQL초보에서 Schema Objects까지_구로IT학원/오라클교육/자바교육/국비지원/재직자환급교육/내일배움카드/사업주위탁
2 mysql트랜잭션과잠금 v0
7.데이터수정
Fundamentals of Oracle SQL
181215 MS SQL로 알아보는 데이터베이스
Ad

More from 탑크리에듀(구로디지털단지역3번출구 2분거리) (20)

PDF
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
PDF
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
PDF
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
PPTX
[IT교육/IT학원]Develope를 위한 IT실무교육
PPTX
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
PPTX
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
PPTX
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
PPTX
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
PPTX
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
PDF
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
PDF
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
PPTX
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
PPTX
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
PPTX
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
PPTX
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
PDF
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
PPTX
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
PPTX
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
PPTX
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
PPTX
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
[IT교육/IT학원]Develope를 위한 IT실무교육
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]

(오라클SQL강좌)오라클 NLS 파라미터_NLS_DATE_FORMAT, NLS_LANG, NLS_LANGUAGE, NLS_TERRITORY_구로디지털단지,오라클학원,SQL학원,SQL튜닝학원,DB무료교육,빅데이터무료취업교육

  • 2. 오라클 NLS Parameters NLS(National Language Support)는 언어 지원과 관련된 파라미터를 지칭하며 SQL*PLUS등에서 확인 하려면 다음과 같이 조회한다. SQL> show parameter nls NAME TYPE VALUE ----------------------- ------ -------- nls_calendar string //sysdate등에서 보이는 캘린더 데이터 포맷 nls_comp string BINARY //where절, PL/SQL안의 NLS데이터 비교 방법 nls_currency string nls_date_format string nls_date_language string nls_dual_currency string nls_iso_currency string nls_language string AMERICAN nls_length_semantics string BYTE nls_nchar_conv_excp string FALSE nls_numeric_characters string nls_sort string nls_territory string AMERICA nls_time_format string nls_time_tz_format string nls_timestamp_format string nls_timestamp_tz_format string NLS_DATE_FORMAT이란? 테이블의 날짜형 칼럼에 값을 입력 시 DATE형으로 만들어 입력을 하거나 NLS_DATE_FORMAT에 맞는 문자열이라면 문자열로 입력이 가능하다. 가끔 날짜형에 문자를 넣을 때 FORMAT이 맞지 않아 애로사항이 있을 수 있으니 NLS_DATE_FORMAT 값을 알고 그 형식대로 문자열을 입력하면 된다. 실제 날짜 표기(TO_CHAR, TO_DATE 실행시) “월요일”, “MON” 으로 표시를 좌우하는 NLS_DATE_FORMAT 값은 NLS_LANGUAGE 을 따른다.
  • 3. NLS_DATE_FORMAT은 현재 시스템의 기본 날짜 입출력 형태를 지정하는 파라미터 이며 TO_CHAR, TO_DATE 함수의 기본 DATE FORMAT이다. SQL> select * from nls_session_parameters 2 where parameter = 'NLS_DATE_FORMAT'; PARAMETER VALUE ------------------- ----------------------------------------- NLS_DATE_FORMAT RR/MM/DD SQL> select sysdate from dual; SYSDATE -------- 16/09/07 SQL> create table datetest ( 2 mydate date 3 ); 테이블이 생성되었습니다. SQL> insert into datetest values ('16/10/01'); 1 개의 행이 만들어졌습니다. SQL> insert into datetest values ('16-10-02'); 1 개의 행이 만들어졌습니다. SQL> insert into datetest values ('20161003'); 1 개의 행이 만들어졌습니다. SQL> insert into datetest values ('161004'); 1 개의 행이 만들어졌습니다. SQL> insert into datetest values ('10-06-2016'); insert into datetest values ('10-06-2016') * 1행에 오류:
  • 4. ORA-01830: 날짜 형식의 지정에 불필요한 데이터가 포함되어 있습니다 SQL> select * from datetest; MYDATE -------- 16/10/01 …… -- NLS_DATE_FORMAT에 맞지 않는 문자열이라면 DATE형으로 형변환해서 입력하면 된다. SQL> insert into datetest values (to_date('10-06-2016','dd-mm-yyyy')); 1 개의 행이 만들어졌습니다. SQL> select * from datetest; MYDATE -------- 16/10/01 …… 16/10/06 -- NLS_DATE_FORMAT을 변경하여 현재 시스템의 날짜 입출력 포맷을 바꾸자. SQL> alter session set nls_date_format='yyyy.mm.dd'; 세션이 변경되었습니다. SQL> select * from datetest; MYDATE ---------- 16.10.01 …… 16.10.06 -- NLS_LANGUAGE값을 한국어로 바꾸자. NLS_DATE_FORMAT은 NLS_LANGUAGE값을 따른다. SQL> alter session set nls_language='KOREAN'; 세션이 변경되었습니다. -- 요일을 단축형과 전체표기 방식으로 표시
  • 5. SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL; TO_CHAR(S TO_C --------- ---- 화요일 화 SQL> alter session set nls_language='AMERICAN'; Session altered. SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL; TO_CHAR(SYSDA TO_CHA ------------- ------ TUESDAY TUE -- 월을 단축/축약형태로 표시(한글로 월표시는 단축형과 전체표기방식으로 표시하는 것이 같다.) SQL> alter session set nls_date_format = 'YYYY-MON-DD'; 세션이 변경되었습니다. SQL> select hiredate from emp where rownum < 3; HIREDATE ---------------- 1980-12월-17 1981-2월 -20 -- 월을 전체표기 방식으로 표시하자. SQL> alter session set nls_date_format = 'YYYY-MONTH-DD'; 세션이 변경되었습니다. SQL> select hiredate from emp where rownum < 3; HIREDATE -------------- 1980-12월-17 1981-2월 -20 SQL> alter session set nls_language='AMERICAN'; Session altered.
  • 6. -- 요일을 단축형과 전체표기 방식으로 표시 SQL> SELECT TO_CHAR(sysdate,'DAY'), TO_CHAR(sysdate,'DY') from DUAL; TO_CHAR(SYSDA TO_CHA ------------- ------ SUNDAY SUN -- 영문의 경우 단축형과 전체표기 방식이 다르다. 단축형은 3글자만 표시한다. SQL> alter session set nls_date_format = 'YYYY-MON-DD'; Session altered. SQL> select hiredate from emp where rownum < 3; HIREDATE -------------- 1980-DEC-17 1981-FEB-20 SQL> alter session set nls_date_format = 'YYYY-MONTH-DD'; Session altered. SQL> select hiredate from emp where rownum < 3; HIREDATE --------------------- 1980-DECEMBER -17 1981-FEBRUARY -20 NLS_LANG, NLS_LANGUAGE, NLS_TERRITORY NLS_LANG : 오라클 데이터베이스의 환경변수 값이 아니라 사용자 환경을 Oracle DB 알려주는 역 할을 하는 환경변수. NLS_LANG = [언어]_[영역].[문자셋] <language>_<Territory>.<client characterset> 예) AMERICAN_AMERICA.KO16KSC5601, AMERICAN_AMERICA.UTF8, KOREAN_KOREA.KO16KSC5601 언어 :현재 사용자가 사용하는 언어적 특성을 결정짓는 값
  • 7. 문자셋, 정렬방식, 날짜 표기에 사용되는 기호(년/월/일, 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.KO16KSC5601′로 설정 할 수 있다.