FREMOVE が「ORA-29280: 無効なディレクトリ パス」というエラーで失敗する
UTL_FILE_DIR へのパスを追加してデータベースを再起動すると、正常に動作します。
これは、ディレクトリが READ と WRITE の両方が付与された Oracle ディレクトリであるかどうかに関係ありません。
UTL_FILE を使用する場合、次の 2 つのオプションのいずれかがあります。
オプション 1: UTL_FILE_DIR には、パラメーターで使用するディレクトリが必要です。そこにない場合は機能しません。欠点は、このパラメーターを変更または追加する必要があるときはいつでも、データベースをバウンスする必要があることです。このメソッドでは、UTL_FILE.FREMOVE の最初のパラメーターが実際の OS ディレクトリに渡されます。
オプション 2: 代わりに oracle ディレクトリ オブジェクトを使用します。UTL_FILE.FREMOVE の最初のパラメータでディレクトリ オブジェクト名 (実際の OS ディレクトリではない) を使用します。
参考文献:
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/u_file.htm
http://www.sc.ehu.es/siwebso/KZCC/Oracle_10g_Documentacion/server.101/b10755/initparams223.htm
FREMOVE パラメータの場所に使用している構文は何ですか? ディレクトリの場合は、Oracle ディレクトリ オブジェクトの名前を渡します。大文字と小文字は区別されます。