sys.fn_trace_gettable (Transact-SQL)
Возвращает содержимое одного или нескольких файлов трассировки в табличном формате.
Важно! |
---|
В будущей версии Microsoft SQL Server этот компонент будет удален. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Вместо этого используйте расширенные события. |
Синтаксические обозначения Transact-SQL
Синтаксис
fn_trace_gettable ( 'filename' , number_files )
Аргументы
'filename'
Указывает первый считываемый файл трассировки. Аргумент filename имеет тип nvarchar(256) и не имеет значения по умолчанию.number_files
Указывает число считываемых файлов продолжения. Это число включает и начальный файл, указанный в параметре filename. Аргумент number_files имеет тип int.
Замечания
Если аргумент number_files указывается в качестве значения default, 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.trc и TraceOct5_1.trc.
Эта функция может считывать трассировку, которая еще активна на экземпляре, на котором она выполняется.
Разрешения
Необходимо разрешение ALTER TRACE на сервере.
Примеры
А.Применение функции fn_trace_gettable для импорта строк из файла трассировки
В следующем примере функция fn_trace_gettable вызывается в предложении FROM инструкции SELECT...INTO.
USE AdventureWorks2012;
GO
SELECT * INTO temp_trc
FROM fn_trace_gettable('c:\temp\mytrace.trc', default);
GO
Б.Получение с помощью функции fn_trace_gettable таблицы со столбцом IDENTITY, которая может быть загружена в таблицу SQL Server
Следующий пример вызывает функцию из инструкции SELECT...INTO и возвращает таблицу со столбцом IDENTITY, которая может быть загружена в таблицу temp_trc.
USE AdventureWorks2012;
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)