質問

Oracle初心者です。
機器更新によるシステム移行を行っているのですが、
Oracleより、抽出データをCSVに出力する、プロシージャにて、

「ORA-29280: 無効なディレクトリ・パスです。」

のエラーが出て対処法が分からずに困っています。

以下、プロシージャ部分抜粋
--------------------------------------------------------------------------------
fno1 utl_file.file_type := utl_file.fopen('EXPORT_DIR','TEST1.csv', 'W');
fno2 utl_file.file_type := utl_file.fopen('EXPORT_DIR','TEST2.csv', 'W');
--------------------------------------------------------------------------------

上記の、「EXPORT_DIR」とは、どこで定義されている変数(?)なのでしょうか?

なんとなく、EXPORT_DIRが正しくないためのエラーと考えているのですが…

処理の流れとしては、TEST.bat → TEST.sql → プロシージャ  で、
TEST.batには試しに、SET EXPORT_DIR = D:\TEST
としてみたのですが、エラーのままでした。

ひょっとして、Oracleに設定すべきもの?

すみませんが、どこでどのように定義するか教えてください。

環境:
Oracle11g
WindowsServer2008R2

通報する

回答 (1件)

こんにちわ。

> ひょっとして、Oracleに設定すべきもの?
そうです。
ディレクトリオブジェクトです。

こんな感じで設定して下さい。
sqlplus "/ as sysdba"
SQL> Create directory EXPORT_DIR as 'D:\TEST';
SQL> grant read on directory EXPORT_DIR to ユーザ名;
SQL> grant write on directory EXPORT_DIR to ユーザ名;
SQL> exit

この回答へのお礼

なるほど!
現行の設定を確認後、登録してみたいと思います。
ありがとうございました。

このQ&Aは役に立ちましたか?0 件

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

新しく質問する

注目の記事

フリーアナウンサー長谷川豊氏の新コーナー「このニュースどう思います?」がスタート!

元フジテレビのフリーアナウンサー長谷川豊氏から気になるニュースについておしトピの皆さんに質問します! 皆さんの意見をもとに長谷川豊氏がコラムを執筆します! アプリリリース記念として最大1万分のアマゾンギフト券プレゼントキャンペーンも実施中!


新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ