プロが教えるわが家の防犯対策術!

はじめまして、PC超初心者なのにOracleを勉強し始めました。
PL/SQLの本を買って見よう見真似でやっているのですが、SQL*PLUSから@<ファイル名>を実行しても何の反応もありません。

SQL>@sample1

としても

SQL>@sample1
SQL>

と何事もなかったようになります。

本によればエディタに保存したSQL内容が実行されるとあるのですが。。。
ちなみにサンプルエディタをダウンロードして、実行しようとしても全くの無反応です。

どこか根本的な設定がおかしいのでしょうか。。。
どなたかご回答いただけると助かります。

A 回答 (3件)

sample1というファイルはどこのフォルダにありますか?


ファイル名にフォルダ名をつけたフルパスで実行してみてください。
たとえばc:\hogeというフォルダにsample1.sqlファイルがあるのであれば
SQL>@c:\hoge\sample.sql
で実行されます。

コマンドプロンプト版のsqlplusだとsqlplusを実行したフォルダにファイルがあるとフォルダ名を省略したファイル名で実行できます。
画面のsqlplusは・・・どこだったか忘れた(^^;

#なんか過去にもこんな質問があったような・・・
    • good
    • 1

k_o_r_o_c_h_a_nさんのおっしゃるとおり、ファイルそのものが見つからないと、エラーが出ますね。

失礼しました。

@sample1
を実行する前に
set echo on
を実行してから@sample1を実行してみてはどうでしょう?
ファイルの中身が表示された上でSQLが実行されます。

# ファイルの中身がpl/sqlなら最後の行に"/"が入っていないだけかも・・・

@sample1を実行した後に/を入力するとどうなりますか?
    • good
    • 0
この回答へのお礼

ossan_hiroさんに教えていただいたとおりにフルパスで指定するとすんなりと動きました。

デスクトップ上に保存していたので、そのまま@sampleで実行してくれると思いこんでいました。。
C直下+フルパスでなんとかなりました。

教えていただいたset echo onも試して併せて動作確認できました。

のっけから躓いてゴロゴロ転がっていましたけど、おかげさまで助かりました。

ご親切に回答していただき、本当にありがとうございました。

お礼日時:2006/07/06 22:03

SQL*PLUSで、ファイルが存在しない場合、


「SP2-0310: ファイル"sample.sql"をオープンできません。」
というエラーになります。

>何事もなかったようになります。

ファイルが存在して、中身がカラだと、そのような挙動をしますが、
そういうことではないですか?
    • good
    • 2
この回答へのお礼

本のサンプルを丸写ししていたのですが、set serveroutput onを事前にしていないと文字列が出力されないということに気づきませんでした。

SP2-0310エラーですが、
@C:\Documents and Settings\rupin\デスクトップ\sampleと指定すると出ます。
C直下に置いてフルパスを指定すると問題なかったのですが。。。
もう少しドタバタしながら勉強していきます。
ご親切にありがとうございました。

お礼日時:2006/07/06 22:11

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

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A