プロシージャからシステム・コマンドを実行します。
xp_cmdshell( command [ , 'no_output' ] )
command システム・コマンドを指定する CHAR(8000) パラメータ。
'no_output' 出力を表示するかどうかを指定する任意の CHAR(254) パラメータ。デフォルトの動作では、出力が表示されます。このパラメータが文字列 'no_output' の場合、出力は表示されません。
xp_cmdshell は、システム・コマンドを実行して、制御を元の環境に戻します。xp_cmdshell が返す値は、実行されたシェル・プロセスからの終了コードです。子プロセスが起動したときにエラーが発生した場合、戻り値は 2 です。
2 番目のパラメータは、Windows オペレーティング・システムのコマンド・ライン・アプリケーションにのみ影響します。UNIX の場合は、2 番目のパラメータの設定にかかわらず、出力は表示されません。
Windows Mobile の場合は、2 番目のパラメータの設定にかかわらず、実行したすべてのコマンドがデータベース・サーバ・メッセージ・ログに表示されます。プロシージャを実行するには、コンソール・シェル \\windows\cmd.exe が必要です。
DBA 権限が必要です。
次の文は、現在のディレクトリにあるファイルをファイル c:\temp.txt 内にリストします。
xp_cmdshell( 'dir > c:\\temp.txt' ) |
次の文は、同じ処理を実行しますが、[コマンド] ウィンドウは表示されません。
xp_cmdshell( 'dir > c:\\temp.txt', 'no_output' ) |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |