
ファイルへの書き込みができない
実行時エラーは表示されないのですが、ファイルへ出力されません。
コードは以下のようにしています。
よろしくお願いします。
declare
FILE_HANDLE utl_file.file_type;
STR varchar2(1023);
begin
-- 書き込みモードでファイルオープン
FILE_HANDLE := UTL_FILE.FOPEN('c:\tmp','test.txt','W');
STR := 'test';
-- ファイルへ出力
UTL_FILE.PUT(FILE_HANDLE,STR);
-- ファイルのクローズ --
UTL_FILE.FCLOSE(FILE_HANDLE);
exception
when others then
dbms_output.put_line('その他エラー');
end;
/
No.1ベストアンサー
- 回答日時:
以下の点で、不備がある可能性がありますね。
・Oracleの初期化パラメータ
・ディレクトリの権限
参考URLを参考に試してみることをオススメします。
参考になれば幸いです。
参考URL:http://www.shift-the-oracle.com/plsql/utl_file/u …
回答ありがとうございます。
紹介サイトを参考に以下の2点を試してみました。
1、すべてのユーザーへの権限の付与
2、ALTER SYSTEM SET
UTL_FILE_DIR='c:\test'
SCOPE = SPFILE ;
再度、質問内容の処理を実行したら
行1でエラーが発生しました。:
ORA-29280: 無効なディレクトリ・パスです。
ORA-06512: "SYS.UTL_FILE", 行33
ORA-06512: "SYS.UTL_FILE", 行436
ORA-06512: 行7
と出てしまいました。
No.5
- 回答日時:
No.4
- 回答日時:
> create directory test as 'c:\test'
> と実行してみましたがうまくいきません。
最初の投稿には、
FILE_HANDLE := UTL_FILE.FOPEN('c:\tmp','test.txt','W');
とありますが、
create directory test as 'c:\tmp'
ではないのですか?
さらに、権限の設定も必要です。
回答ありがとうございます。
オラクルは初めてなので、正直それらしきことは片っ端から試しているような状況です。なので、いまいちよくわかってないです。
権限については、初期化パラメータ UTL_FILE_DIRに設定したディレクトリにしか読み書きできないということと同じでいいのでしょうか?
No.2
- 回答日時:
Oracleのバージョンが書いていないのですが、9i以上ならCREATE DIRECTORYをするべきです。
#1さんのURLと併せてご覧ください。
参考URL:http://www.shift-the-oracle.com/plsql/utl_file/c …
回答ありがとうございます。
オラクルのバージョンは10gです。
create directory test as 'c:\test'
と実行してみましたがうまくいきません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) python flask から fastapiへの移行時のエラー対処 1 2023/02/05 12:26
- C言語・C++・C# #include <stdio.h>int main(void) { int buf[100] = 6 2022/11/01 22:45
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- 画像編集・動画編集・音楽編集 DVD Styler トラブル解決方法 6 2022/10/29 16:00
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
このQ&Aを見た人はこんなQ&Aも見ています
-
UTL_FILEパッケージについて
Oracle
-
ORA-29280:無効なディレクトリ・パスです
Oracle
-
Oracleでの文字列連結サイズの上限
Oracle
-
-
4
Chr(13)とChr(10)の違いは?
PowerPoint(パワーポイント)
-
5
PL/SQL PLS-00103エラーについて
Oracle
-
6
SQLローダーCSV取込で、囲み文字がデータ中に入っている場合について
Oracle
-
7
PLSQLでファイルに書き込みをしたいけど出来ない。。
その他(データベース)
-
8
PL/SQLでSPOOLさせたいのですが、可能でしょうか?
Oracle
-
9
SELECT INTOで一度に複数の変数へ代入をするにはどのようにすれがよいでしょうか?
PostgreSQL
-
10
datapumpの実行方法について
Oracle
-
11
オラクル(PL/SQL)のエラー
その他(データベース)
-
12
PL/SQLでログを確認したい。
Oracle
-
13
CLOB型へのINSERT
Oracle
-
14
PL/SQLカーソルの2重FORループができません
Oracle
-
15
SQL*LoaderでCSVから指定した列のみインポートしたい。
Oracle
-
16
CASE文のエラーについて
Oracle
-
17
Statement ignored というエラー
Oracle
-
18
変数が選択リストにありません
Oracle
-
19
データを削除しても表領域の使用率が減りません
Oracle
-
20
他のテーブルを参照した値はupdateでsetできない?
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
oracleでexpdpを使いデータをex...
-
ユーザーへのディレクトリ権限...
-
ORA-29280:無効なディレクトリ...
-
データベースオブジェクトの考...
-
Oracle DataPumpでの移行
-
ORA-01013のエラーについて経験...
-
Oracleで流したSQLのログを取得...
-
PCC-S-02201エラーの対処を教え...
-
PL/SQL PLS-00103エラーについて
-
CASE文のエラーについて
-
oracle ダンプファイルのサイズ...
-
はじめまして!
-
SQL*Plusで、コマンドの返答を...
-
DOSプロンプトとコマンドプロン...
-
4GB = 4096MB ではない?
-
PL/SQLでログを確認したい。
-
シェルスクリプトでオラクルの...
-
Accessからoracleのストアドプ...
-
フォルダウィンドウのデータフ...
-
空のDVDの見分け方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルへの書き込みができない
-
ORA-29280:無効なディレクトリ...
-
データベースオブジェクトの考...
-
Oracle DataPumpでの移行
-
ユーザーへのディレクトリ権限...
-
oracleでexpdpを使いデータをex...
-
ORA-01013のエラーについて経験...
-
CASE文のエラーについて
-
PL/SQLでログを確認したい。
-
Oracleの起動時に、マウントし...
-
DOSプロンプトとコマンドプロン...
-
はじめまして!
-
ORA-01843: 指定した月が無効で...
-
Oracleで流したSQLのログを取得...
-
PL/SQL PLS-00103エラーについて
-
シェルスクリプトでオラクルの...
-
SQL*Plusで、コマンドの返答を...
-
PL/SQLのコンパイルエラーにつ...
-
4GB = 4096MB ではない?
-
oracle ダンプファイルのサイズ...
おすすめ情報