日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

oracle utl file putf,UTL_FILE包详解(第二篇)

發布時間:2023/12/20 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle utl file putf,UTL_FILE包详解(第二篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

3.4 PUT()

英文解釋:Writes astringtoafile

用法:

utl_file.put(file?IN FILE_TYPE, buffer IN);

函數原型:

PROCEDURE UTL_FILE.PUT (file IN UTL_FILE.FILE_TYPE, buffer OUT VARCHAR2);

參數說明:

file由FOPEN返回的文件句柄

buffer包含要寫入文件的數據緩存;Oracle8.0.3及以上最大允許32kB,早期版本只有1023B。

UTL_FILE.PUT輸出數據時不會附加行終止符。

異常:

UTL_FILE.INVALID_FILEHANDLE

UTL_FILE.INVALID_OPERATION

UTL_FILE.WRITE_ERROR

3.5 NEW_LINE()

英文解釋:Writesoneormoreoperatingsystem-specific line terminatorstoafile

用法:

utl_file.new_line(fileINFILE_TYPE, linesINNATURAL:=1);

UTL_FILE.NEW_LINE

在當前位置輸出新行或行終止符,必須使用NEW_LINE來結束當前行,或者使用PUT_LINE輸出帶有行終止符的完整行數據。

函數原型:

PROCEDURE UTL_FILE.NEW_LINE (file IN UTL_FILE.FILE_TYPE, lines IN NATURAL := 1);

參數說明:

file由FOPEN返回的文件句柄

lines要插入的行數

注意:

如果不指定lines參數,NEW_LINE會使用默認值1,在當前行尾換行。如果要插入一個空白行,可以使用以下語句:

UTL_FILE.NEW_LINE (my_file, 2);

如果lines參數為0或負數,什么都不會寫入文件。

異常:

VALUE_ERROR

UTL_FILE.INVALID_FILEHANDLE

UTL_FILE.INVALID_OPERATION

UTL_FILE.WRITE_ERROR

3.6 PUT_LINE()

英文解釋:Writes a linetoa file.Appends an operatingsystem-specific line terminator

用法:

utl_file.put_line(

file????? IN FILE_TYPE,

buffer??? IN,

autoflush IN);

UTL_FILE.PUT_LINE

輸出一個字符串以及一個與系統有關的行終止符

函數原型:

PROCEDURE UTL_FILE.PUT_LINE (file IN UTL_FILE.FILE_TYPE, buffer IN VARCHAR2);

參數說明:

file由FOPEN返回的文件句柄

buffer包含要寫入文件的數據緩存;Oracle8.0.3及以上最大允許32kB,早期版本只有1023B

注意:

在調用UTL_FILE.PUT_LINE前,必須先打開文件。

異常:

UTL_FILE.INVALID_FILEHANDLE

UTL_FILE.INVALID_OPERATION

UTL_FILE.WRITE_ERROR

3.7 PUTF()

英文解釋:A PUTprocedurewithformatting

utl_file.putf(

fileINfile_type,

formatINVARCHAR2,

arg1INVARCHAR2DEFAULTNULL,

arg2INVARCHAR2DEFAULTNULL,

arg3INVARCHAR2DEFAULTNULL,

arg4INVARCHAR2DEFAULTNULL,

arg5INVARCHAR2DEFAULTNULL);

UTL_FILE.PUTF

以一個模版樣式輸出至多5個字符串,類似C中的printf

函數原型:

PROCEDURE UTL_FILE.PUTF

(file IN FILE_TYPE

,format IN VARCHAR2

,arg1 IN VARCHAR2 DEFAULT NULL

,arg2 IN VARCHAR2 DEFAULT NULL

,arg3 IN VARCHAR2 DEFAULT NULL

,arg4 IN VARCHAR2 DEFAULT NULL

,arg5 IN VARCHAR2 DEFAULT NULL);

參數說明:

file由FOPEN返回的文件句柄

format決定格式的格式串

argN可選的5個參數,最多5個格式串可使用以下樣式

%s在格式串中可以使用最多5個%s,與后面的5個參數一一對應

%s會被后面的參數依次填充,如果沒有足夠的參數,%s會被忽視,不被寫入文件

n換行符。在格式串中沒有個數限制

異常:

UTL_FILE.INVALID_FILEHANDLE

UTL_FILE.INVALID_OPERATION

UTL_FILE.WRITE_ERROR

3.8PUT_RAW()

英文解釋:Acceptsasinput aRAWdatavalueandwritesthevaluetotheoutputbuffer

用法:

utl_file.put_raw(

file????? IN file_type,

buffer??? IN,

autoflush IN);

3.9 FCLOSE()

函數作用:關閉命名的文件:

utl_file.fclose(file IN OUT file_type);

utl_file.fclose(file IN OUT file_type);

3.10 FCLOSE_ALL()

函數作用:關閉所有文件

DECLARE

v_outpututl_file.file_type;

vouthandle utl_file.file_type;

BEGIN

v_output:= utl_file.fopen(v_pathna,'test.txt','R');

vouthandle := utl_file.fopen(v_pathna,'out.txt','W');

IFutl_file.is_open(v_output)THEN

utl_file.fclose_all;

dbms_output.put_line('Closed All');

ENDIF;

ENDfopen;

3.11 FRENAME()

英文解釋:RenameAn OperatingSystemFile

utl_file.frename (

src_locationINVARCHAR2,

src_filenameINVARCHAR2,

dest_locationINVARCHAR2,

dest_filenameINVARCHAR2,

overwriteINBOOLEANDEFAULTFALSE);

BEGIN

utl_file.frename(v_pathna,'test.txt',v_pathna,'x.txt',TRUE);

ENDfrename;

/

存儲過程FRENAME修改一個文件的名稱,這樣我們可以把一個文件從一個位置移動到另外一個位置。

函數原型:

FRENAME(location VARCHAR2,

filename VARCHAR2,

dest_dir VARCHAR2,

dest_file VARCHAR2,

[ overwrite BOOLEAN ])

參數:

location

目錄名稱,存放在pg_catalog.edb_dir.dirname中,這個目錄包含要改名的文件。

filename

要改名的源文件名稱。

dest_dir

目錄名稱,存放在pg_catalog.edb_dir.dirname中,這個目錄是被改名文件所在的目錄。

dest_file

原始文件的新名稱。

overwrite

如果設置為”true”,在dest_dir目錄中覆蓋任何名為dest_file的文件。若設置為”false”,就會產生異常。這是缺省情況。

3.12 FREMOVE()

英文解釋:DeleteAn OperatingSystemFile

utl_file.fremove(locationINVARCHAR2, filenameINVARCHAR2);

-- dump.txt is created in the FCOPY demo

BEGIN

utl_file.fremove(v_pathna,'dump.txt');

ENDfremove;

/

3.13 FFLUSH()

英文解釋:Physically writes pendingdatatothefileidentifiedbythefilehandle

用法:

utl_file.fflush(file IN file_type);

函數原型:

PROCEDURE UTL_FILE.FFLUSH (file IN UTL_FILE.FILE_TYPE);

參數說明:

file由FOPEN返回的文件句柄

注意:

操作系統可能會緩存數據來提高性能。因此可能調用put后,打開文件卻看不到寫入的數據。在關閉文件前要讀取數據的話可以使用UTL_FILE.FFLUSH。

典型的使用方法包括分析執行進度和調試紀錄。

異常:

UTL_FILE.INVALID_FILEHANDLE

UTL_FILE.INVALID_OPERATION

UTL_FILE.WRITE_ERROR

3.14 FCOPY()

英文解釋:Copies a contiguous portion of a file to a newly created file

utl_file.fcopy(

src_locationINVARCHAR2,

src_filenameINVARCHAR2,

dest_locationINVARCHAR2,

dest_filenameINVARCHAR2,

start_lineINBINARY_INTEGERDEFAULT1,

end_lineINBINARY_INTEGERDEFAULTNULL);

BEGIN

utl_file.fcopy(v_pathna,'test.txt',v_pathna,'dump.txt');

END;

UTL_FILE.FCOPY

存儲過程FCOPY把一個文件中文本拷貝到另外一個文件中。

函數原型:

FCOPY(location VARCHAR2, filename VARCHAR2,dest_dir VARCHAR2, dest_file VARCHAR2[, start_line PLS_INTEGER [, end_line PLS_INTEGER ] ])

參數

location

表示目錄名稱,存放在pg_catalog.edb_dir.dirname中,這個目錄包含要拷貝的文件。

filename

要拷貝文件的名稱。

dest_dir

表示目錄名稱,存放在pg_catalog.edb_dir.dirname中,是源文件要拷貝到目的目錄。

dest_file

目標文件的名稱。

start_line

源文件中文本行號,用于指定開始拷貝的位置。缺省值是1。

end_line

源文件中最后一行要拷貝文本的行號。如果省略這個參數或者這個參數為空,那么就一直拷貝到文件中最后一行。

總結

以上是生活随笔為你收集整理的oracle utl file putf,UTL_FILE包详解(第二篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。