SQL*PlusでSPOOLコマンドを使用してログファイルを出力する場合に、
フォルダ名を指定したいのですが、フォルダ名にSpaceがある時に
エラーになってしまいます。
(エラーがでる例)
SQL>SPOOL C:\Documents and Settings\All Users\デスクトップ\TEST.log
SP2-0333: 不正なスプール・ファイル名: "C:\Documents and Settings\All Users\デスクトップ"(不正文字: ' ')
フォルダ名とファイル名全体を、''で囲んでも同じエラーがでます。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
8.3形式を利用したらできないかな?
※8.3形式について
http://e-words.jp/w/82E3E5BDA2E5BC8F.html
今気づいたんだけど、XPってフォルダのプロパティを見ても、旧形式のフォルダパスって出ないのですね。。。
http://www.atmarkit.co.jp/fwin2k/win2ktips/606di …
のような方法もあるようですが、、、面倒そうなので、簡単なVBスクリプトを作ってみたので張っておきます。
応用したら、バッチの作成のスクリプトも作成できるかと思います。
もし、VBスクリプトが未経験であれば、、、、、
http://okwave.jp/qa1559190.html
の#3の手順4~6を読みながら、以下のコードを貼り付けてください。
Option Explicit
Dim objArgs
Set objArgs = WScript.Arguments
Call GetShortPath(objArgs)
Set objArgs = Nothing
Private Sub GetShortPath(arg)
Dim fsoObj
Dim fsoDir
Dim objParam
if arg.Count() < 1 Then
MsgBox "このスクリプトファイルに、任意のフォルダをドラッグしてください。"
Exit Sub
End If
Set fsoObj = CreateObject("Scripting.FileSystemObject")
'パラメータループ
For Each ObjParam in arg
'フォルダであるかをチェック
If fsoObj.FolderExists(objParam) Then
'フォルダが見つかった場合、出力を行う
Set fsoDir = fsoObj.GetFolder(objParam)
Call InputBox(fsoDir.Path, "フォルダを8.3形式に変換", fsoDir.ShortPath)
'一個だけ、処理をしたら、本メソッドは終了する
Exit Sub
End If
Next
'ここまでステップが行われた場合は、フォルダがひとつもドラッグされなかったことを意味する
MsgBox "このスクリプトは、フォルダのみに対応しています。任意のフォルダをドラッグしてください。"
End Sub
回答ありがとうございます。
8.3形式について、回答を参考にさせて頂き、
いろいろと調べてみたところ、この方法で問題なさそうです。
丁度、VBアプリケーションから、SQLファイル作成~
SQL*Plusを直接呼び出して、SQLファイルを実行する処理を
行っていましたので、SQLファイルを作成する直前に8.3形式の
フォルダ名を取得できるので、問題も発生しないと思います。
本当に、ありがとうございました。
No.4
- 回答日時:
もう解決かもしれませんが
sqlplusを実行する前に
cdコマンドでカレントディレクトリを変更してみては?
cd "C:\Documents and Settings\All Users\デスクトップ\"
sqlplus /nolog
connect ユーザ/パスワード@接続文字列
spool TEST.log
回答ありがとうございます。
今回は、1050YENさんの方式でやってみようと思います。
回答は、今後の参考にさせて頂きます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【VBAファイル移動】2つのマクロを順に実行。1つ目のマクロが実行不可⇒2つ目が実行不可となる件 2 2022/07/29 12:17
- Visual Basic(VBA) ワイルドカード「*」を使うとうまくいかないマクロの添削をお願いします 3 2022/03/26 09:39
- Excel(エクセル) VBAで、㉑という数値が、正しく、入力できない 2 2022/07/26 20:22
- グループウェア Outlookのpstファイルが勝手に消える 1 2023/06/12 09:51
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
- Windows 10 ネットワークプリンターにファイルを直接送る方法・コマンドないですか?(´・ω・`) 3 2023/03/13 23:15
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Excel(エクセル) 【VBA】フォルダAにある2つのファイルの内1つを、フォルダBへ。もう1つを、フォルダBへ移動したい 6 2022/07/26 08:51
- Excel(エクセル) マクロのコードを、少しでも削って短くしたい 3 2022/08/30 07:46
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
動的にSPOOLファイルのファイル名を生成したい
Oracle
-
PL/SQLでSPOOLさせたいのですが、可能でしょうか?
Oracle
-
PL/SQLで@ファイル名が反応しません
Oracle
-
-
4
selectした結果の余計な余白を取るにはどうしたらよいのでしょうか
Oracle
-
5
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
6
GROUP BYを行った後に結合したい。
Oracle
-
7
シェルスクリプトでオラクルのエラーメッセージを取得するには
Oracle
-
8
SQL Plusで項目名が最後まで表示されない?
Oracle
-
9
バッチからsqlplusの接続エラーの検知について
その他(プログラミング・Web制作)
-
10
単一グループのグループ関数ではありません。
Oracle
-
11
ファイルの先頭行を全て削除したい
Windows Vista・XP
-
12
oracle spool SJIS → UTF-8
Oracle
-
13
sqlplusでヘッダーが付かない
Oracle
-
14
sqlのエラーハンドリングについて質問です。
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PL/SQLでログを確認したい。
-
SQL*Plusで、コマンドの返答を...
-
pl/sqlでのautotraceについて
-
batファイルでのSQL(oracle)...
-
SQL実行結果の出力を見やすくし...
-
シェル上でDBコマンドをループ...
-
oracle11g listener.logの削除
-
Accessからoracleのストアドプ...
-
ShellからTruncate【Linux】
-
PL/SQLからディレクトリ作成
-
SQL*Plusで以前に実行したコマ...
-
マテリアライズドビューログに...
-
リスナーログを出力しない設定方法
-
実行中のプロシージャを中断
-
ORA-00984のエラーが出ます
-
SQL*PLUSを終了させる方法
-
シェルの実行ができません
-
execute使用した時の、完了メッ...
-
PL/SQLからshellスクリプ...
-
トレースファイルの削除スクリプト
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PL/SQLでログを確認したい。
-
SQL実行結果の出力を見やすくし...
-
Oracleで流したSQLのログを取得...
-
ストアド・プロシージャをバッ...
-
batファイルでのSQL(oracle)...
-
SQL*Plusで、コマンドの返答を...
-
トレースファイルの削除スクリプト
-
マテリアライズドビューログに...
-
Accessからoracleのストアドプ...
-
SQL実行結果取得
-
【spoolコマンドで追記】
-
SPOOL出力先のフォルダにSpace...
-
JavaでのOracle接続について(J...
-
ShellからTruncate【Linux】
-
リスナーログを出力しない設定方法
-
ソート(大文字・小文字を区別...
-
PL/SQLからshellスクリプ...
-
PL/SQLからディレクトリ作成
-
pl/sqlでのautotraceについて
-
サービスの再起動を自動で
おすすめ情報