2014-01-27 4 views
1

텍스트 가져 오기 도구를 사용하여 pl/sql 개발자에게 .csv 파일을 업로드합니다. 업로드 한 파일의 날짜 형식이 '3/1/2009'인 열 (유효 날짜)이 있습니다. 하지만 업로드 한 후 쿼리하면 '1/3/2009'로 표시됩니다.PL/SQL의 날짜 형식

수정 쿼리를 작성해야합니다. 하지만 다른 날짜의 거대한 레코드가 있다면 가능하지 않습니다.

누군가가 왜 날짜가 잘못 업데이트되고 있는지, 그리고 어떻게 수정해야하는지 말해 줄 수 있습니까?

+0

날짜 필드를 변환 된 문자열로 업데이트 했습니까? 어쩌면 그것은 같은 날짜이지만 다른 형식으로 다른 데코레이션/인코딩 스키마를가집니다 –

+0

형식 셀을 통해 .csv 파일을 의미합니다. – user3242119

+0

예, 텍스트 파일을 가져올 때 모두 텍스트이고, 다음으로 나 같은 도구가 있습니다. 이 텍스트를 날짜 또는 숫자와 같은 내부 데이터 유형으로 변환하십시오. 이 경우 날짜 형식은 기본 형식이거나 제공하는 형식입니다. 이게 당신 사건입니까? –

답변

0

오라클은 자동으로 문자열/varchar에서 날짜 데이터 유형으로 변환합니다. 사용자 환경에서 NLS_DATE_FORMAT을 사용하여 날짜와 텍스트를 앞뒤로 변환합니다. 이 문장을 사용하여 세션의 형식을 변경할 수 있습니다 : alter session set nls_date_format='MM/DD/YYYY';. 데이터 형식에 맞는 형식을 선택하십시오. 'MM/DD/YYYY'가 필요한 것 같습니다. NLS_DATE_FORMAT을 변경하는 다른 방법은 여기에 설명되어 있습니다. http://www.dba-oracle.com/t_nls_date_format.htm. 대부분의 경우 사용자 환경에서 영구적으로 설정하지 않고 현재 활성 세션에 맞게 설정하면 연결을 해제 한 후에 재설정됩니다. PL/SQL Developer는 여기에 없지만 어딘가에 메뉴와 같은 설정이있을 수 있습니다.

+0

OP :이 작업을 수행 했습니까? – riverdog