Share via


sp_trace_setstatus (Transact-SQL)

適用於:SQL Server

修改指定追蹤的目前狀態。

重要

SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用擴充事件。

Transact-SQL 語法慣例

語法

sp_trace_setstatus
    [ @traceid = ] traceid
    , [ @status = ] status
[ ; ]

引數

[ @traceid = ] traceid

要修改之追蹤的標識碼。 @traceid為 int,沒有預設值。 使用者會使用此 @traceid 值來識別、修改及控制追蹤。 如需擷取 @traceid的相關信息,請參閱 sys.fn_trace_getinfo (Transact-SQL)

[ @status = ] status

指定要在追蹤上實作的動作。 @status為 int,沒有預設值。

下表列出可指定的狀態。

狀態 描述
0 停止指定的追蹤。
1 啟動指定的追蹤。
2 關閉指定的追蹤,並從伺服器刪除其定義。

注意

您必須先關閉追蹤,才能將它刪除。 必須先停止和關閉追蹤,才能檢視追蹤。

傳回碼值

下表描述使用者可能會在預存程式完成之後取得的程式代碼值。

傳回碼 描述
0 沒有錯誤。
1 未知的誤差。
8 指定的 Status 無效。
9 指定的追蹤句柄無效。
13 記憶體不足。 當記憶體不足而無法執行指定的動作時傳回。

如果追蹤已經處於指定的狀態,SQL Server 會傳 0回 。

備註

所有 SQL 追蹤預存程式的參數 (sp_trace_*) 都是嚴格類型。 如果沒有依照引數描述所指定,以正確的輸入參數資料類型來呼叫這些參數,預存程序會傳回錯誤。

如需使用追蹤預存程序的範例,請參閱建立追蹤 (Transact-SQL)

權限

需要 ALTER TRACE 許可權。