トップページ >  SQL*Plus >  cmdsep
初版2005/06/22: 最終更新日2006/11/15
  cmdsep
cmdsep
システム変数cmdsepは、1行中に複数のSQL*Plusコマンドを使用できるかどうかを指定するシステム変数です。

set cmds[ep] off

と設定すると、1行中には一つのSQL*Plusコマンドしか入力できません。

でも以下のように

set cmds[ep] on

と設定すると、SQL*Plusコマンドを1行中に複数入力することができます。
この時、SQL*Plusコマンドはセミコロン(;)で区切ります。
以下は例ですが、SQLバッファを表示してから実行しています。それを一行で書いているのでセミコロンで区切っています。

SQL> list;/

デフォルトでは、セパレータはセミコロンですが、英数字以外の文字なら指定することができます。

set cmdsep 英数字以外の1文字

と設定します。するとセパレータは指定した1文字に変更されます。
たとえば

set cmds[ep] :

というように設定します。

但し、 spool c:\a.txt;/;spool off というようにすると、なぜか出力できませんでした。