21 October 2010

Oracle External tables

1) Create Oracle Directory
2) Put file (txt, csv) into Directory



  file example emp.txt:
7369;SMITH;CLERK;7902;17.12.1980;800.00;;20
7499;ALLEN;SALESMAN;7698;20.02.1981;1600.00;300.00;30
7521;WARD;SALESMAN;7698;22.02.1981;1250.00;500.00;30
7566;JONES;MANAGER;7839;02.04.1981;2975.00;;20
7654;MARTIN;SALESMAN;7698;28.09.1981;1250.00;1400.00;30
7698;BLAKE;MANAGER;7839;01.05.1981;2850.00;;30
7782;CLARK;MANAGER;7839;09.06.1981;2450.00;;10
7788;SCOTT;ANALYST;7566;19.04.1987;3000.00;;20
7839;KING;PRESIDENT;;17.11.1981;5000.00;;10
7844;TURNER;SALESMAN;7698;08.09.1981;1500.00;0.00;30
7876;ADAMS;CLERK;7788;23.05.1987;1100.00;;20
7900;JAMES;CLERK;7698;03.12.1981;950.00;;30
7902;FORD;ANALYST;7566;03.12.1981;3000.00;;20
7934;MILLER;CLERK;7782;23.01.1982;1300.00;;10

3) create table
  example


CREATE TABLE XTERN_TAB
(
  EMPNO     NUMBER(4),
  ENAME     VARCHAR2(10 BYTE),
  JOB       VARCHAR2(9 BYTE),
  MGR       NUMBER(4),
  HIREDATE  VARCHAR2(20 BYTE),
  SAL       NUMBER(7,2),
  COMM      NUMBER(7,2),
  DEPTNO    NUMBER(2)
)
ORGANIZATION EXTERNAL
  (  TYPE ORACLE_LOADER
     DEFAULT DIRECTORY EXTTAB
     ACCESS PARAMETERS
       ( records delimited by newline fields terminated by ';' )
     LOCATION (EXTTAB:'emp.txt')
  );
4) select from table

NOTE user of oracle service must have OS permission to read/write on the Directory.

No comments:

Post a Comment