sp_trace_setstatus (Transact-SQL)
適用於:SQL Server
修改指定追蹤的目前狀態。
重要
SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用擴充事件。
語法
sp_trace_setstatus
[ @traceid = ] traceid
, [ @status = ] status
[ ; ]
引數
[ @traceid = ] traceid
要修改之追蹤的標識碼。 @traceid為 int,沒有預設值。 使用者會使用此 @traceid 值來識別、修改及控制追蹤。 如需擷取 @traceid的相關信息,請參閱 sys.fn_trace_getinfo。
[ @status = ] status
指定要在追蹤上實作的動作。 @status為 int,沒有預設值。
下表列出可以指定的狀態。
狀態 | 描述 |
---|---|
0 |
停止指定的追蹤。 |
1 |
啟動指定的追蹤。 |
2 |
關閉指定的追蹤,並從伺服器刪除其定義。 |
注意
您必須先關閉追蹤,才能將它刪除。 必須先停止和關閉追蹤,才能檢視追蹤。
傳回碼值
下表描述在預存程式完成之後,您可以取得的程式代碼值。
傳回碼 | 描述 |
---|---|
0 |
沒有錯誤。 |
1 |
未知的誤差。 |
8 |
指定的 Status 無效。 |
9 |
指定的追蹤句柄無效。 |
13 |
記憶體不足。 當記憶體不足而無法執行指定的動作時傳回。 |
如果追蹤已經處於指定的狀態,SQL Server 會傳 0
回 。
備註
所有 SQL 追蹤預存程式的參數 (sp_trace_*
) 都是嚴格類型。 如果沒有依照引數描述所指定,以正確的輸入參數資料類型來呼叫這些參數,預存程序會傳回錯誤。
如需使用追蹤預存程式的範例,請參閱 建立追蹤。
權限
需要 ALTER TRACE 許可權。