09/03/2006 | jiangws2002 リンク: @IT 会議室 – スレッド一覧. リンク: PL/SQL文にて – Database Expert. –ファイル名設定 file_name := UPPER(rec_kaisya_1.kaisya_cd) || ‘_KATAMEI_ERROR_’ || to_char(sysdate, ‘YYMMDD’) || ‘.csv’; –ファイルオープン(新規書き込みモード) File_Handle := UTL_FILE.FOPEN(file_dir, file_name, ‘w’); –日付の書き込み UTL_FILE.PUTF(File_Handle, ‘Created: %s\n’, SYSDATE); –ファイルへの書き込み(改行のみ) UTL_FILE.NEW_LINE(FILE_HANDLE); –見出しの書き込み v_line_header := ‘会社コード, 会社名, 販製品名, 数量’; UTL_FILE.PUT_LINE(File_Handle, v_line_header); –会社毎のデータ取得 FOR rec_kaisya IN cur_kaisya(v_nenki,rec_kaisya_1.kaisya_cd ) LOOP –一行づつ書き込み UTL_FILE.PUTF(File_Handle,’ ‘’%s, ‘’%s, ‘’%s, %s\n’, rec_kaisya.kaisya_cd ,rec_kaisya.kaisya_jname ,rec_kaisya.hanseihin_mei ,rec_kaisya.su); END LOOP; UTL_FILE.FCLOSE(File_Handle); END LOOP; –略– /* *ファイルの削除 ファイルの削除のプロシージャはUTL_FILE.FREMOVE を利用します。 このプロシージャは実行するユーザーに十分な権限があるという前提で ファイルの削除をすることが可能。 このプロシージャはバイナリデータに対しても使用可能。 <プロシージャ定義> UTL_FILE.FREMOVE (削除対象のあるディレクトリ名IN VARCHAR2, 移動対象のファイルIN VARCHAR2) <使用例> C:\DATAFILE\TEST.TXT を削除する SQL> host dir /b TEST.TXT SQL> exec utl_file.fremove(’DIR_C’,’TEST.TXT’); PL/SQL プロシージャが正常に完了しました。 SQL> host dir /b SQL>