oracle utl_file檔案寫入讀取
--1、建立伺服器目錄
(1)在system使用者下執行如下命令:create or replace directory mail_file_dir as '/tmp/data/dev';
(2)給建立的目錄賦許可權,執行:grant read ,write on directory mail_file_dir to public;
如果是雙節點的伺服器,在兩個伺服器上執行上述sql語句
--2、在資料庫伺服器上建立/mail_file/data/prod目錄
切換到主目錄'/'下執行建立目錄命令
目錄建立完成後在主目錄'/'下執行賦許可權命令:chmod 777 /mail_file/data/prod
--3、向目錄下寫入檔案
declare
fhandle utl_file.file_type;
begin
fhandle := utl_file.fopen('mail_file_dir'
,'example.txt'
,'w');
utl_file.put_line(fhandle
,'gh test write one');
utl_file.put_line(fhandle
,'gh test write two');
utl_file.fclose(fhandle);
end;
--4、讀出檔案的內容
declare
fhandle utl_file.file_type;
fp_buffer varchar2(4000);
begin
fhandle := utl_file.fopen('mail_file_dir'
,'example.txt'
,'r');
utl_file.get_line(fhandle
,fp_buffer);
dbms_output.put_line(fp_buffer);
utl_file.get_line(fhandle
,fp_buffer);
dbms_output.put_line(fp_buffer);
utl_file.fclose(fhandle);
end;
常見報錯:
ora-29283 : 檔案操作無效
ora-06512 : 在"sys.utl_file", line 449
ora-29283 : 檔案操作無效
錯誤原因:在資料庫下面沒有目錄或者目錄沒有賦讀寫許可權
解決辦法:先檢視檔案和路徑是哪一步許可權不夠,然後針對許可權重新賦許可權。
用oracle utl file包讀取資料寫入檔案
create or replace directory my dir as usr test create or replace function f exporttxt 傳入引數 i query in varchar2,i separator in varchar2,i dir in varcha...
檔案 標頭檔案 原始檔(C )
標頭檔案和原始檔中的函式宣告與定義 函式原型 file fsopen const char filename,const char mode,int shflag file wfsopen const wchar t filename,const wchar t mode,int shflag 注 ...
python 檔案遍歷 檔案讀取 檔案操作
一 檔案遍歷 import os filedir d os.sep data2 for root,dirs,files in os.walk filedir for dir in dirs print os.path.join root,dir for file in files print os....