PL/SQL文にて
PL/SQL文にて、コーディングをしています。意図した通りにプログラムは動作するのですが、ファイルに何のデータも入ってこない場合の分岐処理を加えて、データが入ってこなかった場合にはファイルは作成しないというロジックを検討しています。どなたかうまいやり方をご存知無いでしょうか?
--略--
--ファイル名設定
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;
--略--
お礼
ありがとうございます!! できました! 上記のURL正しくは http://www.gopython.net/doc/pos823/plpgsql-statements.html でした!