以下の内容はhttps://htn20190109.hatenablog.com/entry/2024/11/11/225546より取得しました。


{外部表}外部表を作成

 

https://docs.oracle.com/cd/F19136_01/sutil/oracle_loader-access-driver.html
https://docs.oracle.com/cd/F19136_01/sutil/oracle_datapump-access-driver.html


      LOADERアクセスドライバ(delimited by newline)
vi exttab1.dat
360,Jane,Janus,ST_CLERK,121,17-MAY-2001,3000,0,50,jjanus
361,Mark,Jasper,SA_REP,145,17-MAY-2001,8000,.1,80,mjasper
362,Brenda,Starr,AD_ASST,200,17-MAY-2001,5500,0,10,bstarr
363,Alex,Alda,AC_MGR,145,17-MAY-2001,9000,.15,80,aalda

※末尾に空行があるとエラーとなる

CREATE TABLE test.ext_employees
                   (employee_id       NUMBER(4), 
                    first_name        VARCHAR2(20),
                    last_name         VARCHAR2(25), 
                    job_id            VARCHAR2(10),
                    manager_id        NUMBER(4),
                    hire_date         DATE,
                    salary            NUMBER(8,2),
                    commission_pct    NUMBER(2,2),
                    department_id     NUMBER(4),
                    email             VARCHAR2(25) 
                   ) 
     ORGANIZATION EXTERNAL 
     ( 
       TYPE ORACLE_LOADER 
       DEFAULT DIRECTORY ORA_DIR
       ACCESS PARAMETERS 
       ( 
         records delimited by newline 
         fields terminated by ',' 
         ( employee_id, first_name, last_name, job_id, manager_id, 
           hire_date char date_format date mask "dd-mon-yyyy", 
           salary, commission_pct, department_id, email 
         ) 
       ) 
       LOCATION ('exttab1.dat') 
     ) 
     ; 

select * from test.ext_employees;

 


      LOADERアクセスドライバ(プリプロセッサ句使用)

vi uncompress.sh
/usr/bin/gunzip < $1
chmod 777 uncompress.sh

cp -p exttab1.dat exttab2.dat
gzip exttab2.dat

CREATE TABLE test.ext_employees2
                   (employee_id       NUMBER(4), 
                    first_name        VARCHAR2(20),
                    last_name         VARCHAR2(25), 
                    job_id            VARCHAR2(10),
                    manager_id        NUMBER(4),
                    hire_date         DATE,
                    salary            NUMBER(8,2),
                    commission_pct    NUMBER(2,2),
                    department_id     NUMBER(4),
                    email             VARCHAR2(25) 
                   ) 
     ORGANIZATION EXTERNAL 
     ( 
       TYPE ORACLE_LOADER 
       DEFAULT DIRECTORY ORA_DIR
       ACCESS PARAMETERS 
       ( 
         records delimited by newline
         PREPROCESSOR 'uncompress.sh'
         fields terminated by ',' 
         ( employee_id, first_name, last_name, job_id, manager_id, 
           hire_date char date_format date mask "dd-mon-yyyy", 
           salary, commission_pct, department_id, email 
         ) 
       ) 
       LOCATION ('exttab2.dat.gz') 
     ) 
     ; 

select * from test.ext_employees2;

 


      DATAPUMPアクセスドライバ

CREATE TABLE test.ext_tab1
ORGANIZATION EXTERNAL
(
    TYPE ORACLE_DATAPUMP
    DEFAULT DIRECTORY ORA_DIR
    LOCATION ('exttab1.dmp')
   )
AS SELECT * FROM test.tab1;

select * from test.ext_tab1;

 

 




以上の内容はhttps://htn20190109.hatenablog.com/entry/2024/11/11/225546より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14