CREATE OR REPLACE PROCEDURE RIVUS.UTL_FILE_DIR_WRITE_SAMPLE
AS
vHandle UTL_FILE.FILE_TYPE;
vDirname VARCHAR2(250);
vFilename VARCHAR2(250);
vOutput VARCHAR2(32767);
BEGIN
vDirname := '/u05/file_storage/send_dir';   -- 1 vFilename := 'test.txt';
vHandle := UTL_FILE.FOPEN(vDirname ,vFilename,'w', 32767);   -- 1
 
vOutput := '初期化パラメータ UTL_FILE_DIR 経由でのファイル出力です';  -- 1
UTL_FILE.PUT_LINE(vHandle, vOutput);   -- 1
UTL_FILE.FCLOSE(vHandle);
EXCEPTION WHEN OTHERS THEN
UTL_FILE.FCLOSE_ALL;
RAISE;
END;
/四个-- 1的地方,都是什么意思呢?? 谢谢了!!

解决方案 »

  1.   

    第一个是定义打开文件的目录位置
    第二个是打开指定的目录下的文件,把句柄赋给变量。
    第三个是给一个变量赋字符串值
    第四个是把字符串中的值写到文件中。
    CREATE OR REPLACE PROCEDURE RIVUS.UTL_FILE_DIR_WRITE_SAMPLE 
    AS 
    vHandle UTL_FILE.FILE_TYPE; 
    vDirname VARCHAR2(250); 
    vFilename VARCHAR2(250); 
    vOutput VARCHAR2(32767); 
    BEGIN 
    vDirname := '/u05/file_storage/send_dir';  -- 1 vFilename := 'test.txt'; 
    vHandle := UTL_FILE.FOPEN(vDirname ,vFilename,'w', 32767);  -- 1 vOutput := '初期化パラメータ UTL_FILE_DIR 経由でのファイル出力です';  -- 1 
    UTL_FILE.PUT_LINE(vHandle, vOutput);  -- 1 
    UTL_FILE.FCLOSE(vHandle); 
    EXCEPTION WHEN OTHERS THEN 
    UTL_FILE.FCLOSE_ALL; 
    RAISE; 
    END; 
      

  2.   

    '/u05/file_storage/send_dir'
    这是什么目录阿,是C盘的?