SQL スクリプト ファイルを SQL Plus にインポートしたいと考えています。例を見つけて、次のようにしてみました。
SQL>START z:myscript.sql
しかし、うまくいきませんでした。SQL Plus ウィンドウに「35」と表示され、カーソルが強調表示され、入力を続行できることが示されました (???)
コード オブジェクトを作成するすべてのステートメント (CREATE PROCEDURE、CREATE FUNCTION、CREATE PACKAGE、CREATE TYPE など) を実行するには、その後にスラッシュ ("/") を付ける必要があります。通常の SQL ステートメントはセミコロンで終了すると実行されますが、PL/SQL コードの行は常にセミコロンで終了するため、これをコード オブジェクトの実行の指標として使用することはできません。
あなた自身のフォローアップから、スクリプトにそのようなステートメントが複数あり、最後のステートメントの後にスラッシュを入力したようです。これにより、SQLPlus はスクリプトのテキスト全体を単一のステートメントとして実行しようとしますが、失敗する可能性があります。
次のようなものが必要です。
CREATE TYPE my_type_1
... your code here ...
/
CREATE TYPE my_type_2
... your code here ...
/
プロンプトで@filenameを試しましたか?
>@runscript.sql
コマンド ラインから次のように入力します。
SQLPLUS username/password@TNSNAME @myscript.sql
これにより、指定されたユーザー名とパスワードを使用して TNSNAME に接続し、myscript.sql ファイルを実行します。スクリプト名にスペースが含まれている場合は、二重引用符で囲むことができます。