2014-10-30 2 views
0

플랫 파일에서 데이터를 업로드해야합니다.Oracle SQL Loader의 임시 변수

플랫폼/버전 :Oracle 10g/Windows

내 플랫 파일 보인다 아래 같은 :

H,1,10302014 
P,10.00,ABC 
P,15.00,XYZ 
P,14.75,BBY 
T,3 
  • 최초의 기록 - 헤더 (행 표시,에 FileType, 일) 넷째로
  • 초 - Detal 레코드 (행 표시기, 금액, 이름)
  • 마지막 레코드 - 예고편 (행 표시기, 상세 번호 기록)
create table Mytable 
(Row_ind Varchar2(2), 
Amount number(6,2), 
name varchar2(15), 
file_Dt date); 

나는 세부 기록을 삽입하는 동안에 헤더 레코드에서 날짜 (10302014)를 사용해야합니다. 가능합니까?

참고 :

파일 크기 만 기록을 통해 내가이 업데이 트를 파일에 권한이 없습니다 (파일이 ASCII 형식이 아닌)

+1

EXTERNAL 테이블을 사용하는 것이 적절합니까? 그것을 사용할 수 + MyTable을 채우기 위해 선택,하지만 성능에 대해 아무 말도 할 수 없어 – Multisync

+0

글쎄, 클라이언트는 제자리에 제어 파일이 있습니다. 그래서.. – RasKnorr

답변

0

하는 경우 오라클 9i 이상을 사용하고 있다면 값을 바인딩하고 나중에 프로세스에서 사용하는 방법이 있지만 고객에게 제어 파일을 작성하거나 수정하는 방법을 알릴 수 있다고 가정합니다. 여러 삽입 (테이블에 헤더 레코드를 사용하여 열을 날짜 열에 바인딩하는 경우)이 작동하는지도 궁금합니다. 이어지는 삽입에 바인딩 된 열이 포함되어 있는지 궁금합니다. Oracle에서 SQL * 로더를 검색하십시오. 나는 그것의 일부를 발견했다 here.