EƒBƒVEΰ€ƒqƒtα€λ
ƒeuBƒ’ƒtƒlƒ^ƒ†BBƒTΰ

PL/SQL SampleBƒ@UTL_FILE

*** INITEƒ†EBEAE뀃k"utl_file_dir"AƒzƒTƒŠƒgꀃƒƒmƒƒƒwƒ‰AƒkAƒP



CREATE OR REPLACE PROCEDURE SP_UTL_FILE
    ( nRET           OUT   NUMBER
    )
/******************************************************************************
**  Eƒ‰Eν₯ƒLEƒNEγΜƒZBBBBBƒ@SP_UTL_FILE
**  ƒlƒkƒ\BBBBBBBBBBBBƒ@01
**  ƒIBƒkƒXƒEƒIƒwƒ‰BBBBBBBBBƒ@UTL_FILEAƒkEXPORTAƒzDATEƒ†EBEAEλ€ξΐƒ‡AƒPAλ
**                    AƒEAƒzSPAƒzƒIBƒkƒXAƒ}ƒcƒZAƒzSPAƒqƒcƒ…AƒLAƒjƒzƒmAA
**                    OUT   nRET       ƒXθΝ벃t
**  E[E푃VEƒ~E둁BBBBBBƒ@none:
******************************************************************************/
AS
    /* ŽάŽ°ŽΈƒnƒ€ƒ\ƒzƒgꡃ` */
    FILE_HANDLE   UTL_FILE.FILE_TYPE;   --ŽΜŽ§Ž²ŽΩŽΚŽέŽΔŽήŽΩAƒzƒgꡃ`
    DATA_LINE     VARCHAR2(800);        --ŽΜŽ§Ž²ŽΩƒXƒ~ƒzƒ}Ž΄ŽΨŽ±
    WK_DATA_LINE  VARCHAR2(800);        --ŽΜŽ§Ž²ŽΩƒXƒ~ƒzƒ}ƒnƒ„ƒXƒNŽ΄ŽΨŽ±

    v_FILE_PATH   VARCHAR2(40) := 'D:\DBMS_OUT';                   -- Out Path
    vCtrl_FILE    VARCHAR2(40) := 'EXPORT.bat';                    -- Out File
    cDATE         VARCHAR2(8);
    oRET          NUMBER;

BEGIN

   -- ƒjƒ†AƒnƒkƒV
   SELECT to_char(SYSDATE ,'YYYYMMDD') INTO cDATE FROM DUAL;

   -- ƒ^ƒDƒNζ₯ƒ~EƒeEƒ`Eƒ†EBEAEλΊξΐƒ‡
   FILE_HANDLE := UTL_FILE.FOPEN(v_FILE_PATH ,vCtrl_FILE,'W');     -- Eƒ†EBEAEλ€ξΐƒ‡

   -- Eƒ€Eι₯ᑃVEƒ\ƒTƒŠƒgꀁJAƒk1ƒPƒ„AƒkƒXƒbAƒEAƒl
   UTL_FILE.PUT_LINE(FILE_HANDLE , 'exp80 USER/PASSWD@SID parfile=' || v_FILE_PATH || '\pfile' || cDATE || '.dat');

   oRET := SF_YE_UTL_FILE(cDATE);                                  -- EXPORTƒwƒ€ pfileAξΐƒ‡AƒLAJAƒP
 
   IF oRET <> 0 THEN
      nRET := 9;
   END IF;
 
   UTL_FILE.FCLOSE(FILE_HANDLE);                                   -- ƒXƒ…ƒPKƒXƒFƒzƒT

   nRET := 0; -- ƒ^ƒIƒZcFƒzƒT

EXCEPTION
    /*** ƒ`ƒGAƒjAƒzEƒBE鑃VAƒzƒZμΉη ***/
    WHEN OTHERS THEN

        /* ƒtα€κΓƒwAƒzƒ^Kƒgκ */
        nRET := SQLCODE;    -- [ƒƒZο
END SP_UTL_FILE;
/
SHOW ERRORS
 


Copyright (C) 1999 System Infinity Corporation. All rights reserved.