指定されたトレースの現在の状態を変更します。
構文
sp_trace_setstatus [ @traceid = ] trace_id
, [ @status = ] status
引数
[ @traceid = ] trace_id
変更するトレースの ID です。trace_id は int であり、既定値はありません。ユーザーは、この trace_id 値を使用してトレースの識別、変更、および制御を行います。
[@status =] status
トレースに実装する操作を指定します。status は int であり、既定値はありません。
次の表は、指定できる状態の一覧です。
| 状態 | 説明 |
| 0 | 指定されたトレースを停止します。 |
| 1 | 指定されたトレースを開始します。 |
| 2 | 指定されたトレースを閉じて、その定義をサーバーから削除します。 |
注 トレースを閉じるには、最初にそのトレースを停止する必要があります。
戻り値
次の表は、このストアド プロシージャの完了時の戻り値 (コード) の一覧です。
| リターン コード | 説明 |
| 0 | エラーはありません。 |
| 1 | 不明なエラーです。 |
| 8 | 指定した状態は無効です。 |
| 9 | 指定したトレース ハンドルは無効です。 |
| 13 | メモリが足りません。指定した操作を実行するために十分なメモリがない場合に返されます。 |
トレースが既に指定した状態である場合は、0 が返されます。
解説
sp_trace_setstatus は Microsoft SQL Server 2000 のストアド プロシージャで、以前のバージョンの SQL Server では xp_trace_* 拡張ストアド プロシージャで実行されていた多くの操作を実行します。sp_trace_setstatus は、以下の拡張ストアド プロシージャの代わりに使用します。
- xp_trace_destroyqueue
- xp_trace_pausequeue
- xp_trace_restartqueue
- xp_trace_startconsumer
すべての SQL Trace ストアド プロシージャ (sp_trace_xx) のパラメータでは、データ型が厳密に定義されています。これらのパラメータを、引数の説明で指定されている正しいデータ型で呼び出されないと、このストアド プロシージャはエラーを返します。
権限
sp_trace_setstatus を実行できるのは、固定サーバー ロール sysadmin のメンバだけです。
例
関連項目
fn_trace_geteventinfo
fn_trace_getfilterinfo
fn_trace_getinfo
sp_trace_generateevent
sp_trace_setevent
sp_trace_setfilter