sys.fn_trace_gettable (Transact-SQL)

適用於:SQL Server

以表格式格式傳回一或多個追蹤檔案的內容。

重要

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

Transact-SQL 語法慣例

語法

  
fn_trace_gettable ( 'filename' , number_files )  

引數

'filename'
指定要讀取的初始追蹤檔案。 filenamenvarchar(256),沒有預設值。

number_files
指定要讀取的變換檔案數目。 此數位包含檔名中指定的初始檔案。 number_files是 int

備註

如果 number_files 指定為 預設值fn_trace_gettable 會讀取所有變換檔案,直到到達追蹤結尾為止。 fn_trace_gettable傳回具有指定追蹤之所有數據行的數據表。 如需詳細資訊,請參閱 sp_trace_setevent (Transact-SQL)

請注意,fn_trace_gettable函式不會載入換用檔案(使用 number_files 自變數指定此選項時),原始追蹤檔名以底線和數值結尾。 (這不適用於檔案變換時自動附加的底線和數位。因應措施是,您可以重新命名追蹤檔案,以移除源檔名稱中的底線。 例如,如果源檔名為 Trace_Oct_5.trc,而換用檔案名為 Trace_Oct_5_1.trc,您可以將檔案重新命名TraceOct5.trcTraceOct5_1.trc。

此函式可以讀取仍在執行其實例上的追蹤。

權限

需要伺服器上的 ALTER TRACE 許可權。

範例

A. 使用fn_trace_gettable從追蹤檔案匯入數據列

下列範例會在 語句的 SELECT...INTO 子句內FROM呼叫 fn_trace_gettable

USE AdventureWorks2022;  
GO  
SELECT * INTO temp_trc  
FROM fn_trace_gettable('c:\temp\mytrace.trc', default);  
GO  

B. 使用fn_trace_gettable傳回可載入 SQL Server 數據表的 IDENTITY 資料行數據表

下列範例會呼叫 函式做為 語句的一 SELECT...INTO 部分,並傳回具有 IDENTITY 可載入至數據表 的數據行的數據表 temp_trc

USE AdventureWorks2022;  
GO  
SELECT IDENTITY(int, 1, 1) AS RowNumber, * INTO temp_trc  
FROM fn_trace_gettable('c:\temp\mytrace.trc', default);  
GO  

另請參閱

sp_trace_generateevent (Transact-SQL)
sp_trace_setevent (Transact-SQL)
sp_trace_setfilter (Transact-SQL)
sp_trace_setstatus (Transact-SQL)