PL/SQL から SQL*Plus コマンド実行する PL/SQL を始めたばかりのときに良くある誤解であるが PL/SQL ブロック の内部から SQL*Plus コマンドは実行できない。 PL/SQL ブロックは「梱包されて」オラクルの本体であるインスタンスに PL/SQL のテキスト文が送信されて実行される。 PL/SQL ブロック内では Java、JOB、外部プロシージャを経由することでサーバーのリソースにアクセスし、システムコマンドを実行することできるがクライアント側のユーザープロセス(SQL*Plus) に直接命令を伝達することができない。 できるのはインスタンスの実行結果の内容を表示したりバインド変数を経由したデータのやり取りすることである。 SQL*Plus 定数とシステム変数 SQL*Plus システム変数一覧 SQL*Plus 事前定義変数