Ich verwende die Variable Context_Info(), um den Benutzer zu verfolgen, der eine gespeicherte Prozedur und Free-Form-SQL ausführt. Bei der Fehlersuche auf diesem Server kommt jede Sitzung zustande. Ich möchte in der Lage sein, den Wert der context_info() Variable einzubringen und basierend darauf zu filtern.Wie greifen Sie auf die Context_Info() - Variable in SQL2005 Profiler zu?
1
A
Antwort
3
Sie können die UserConfigurable Events zusammen mit sp_trace_generateevent (EventId's 82-91) verwenden, wenn Sie context_info() setzen, um die Werte in den Trace auszugeben. Sie können dies entweder tun oder die Anweisungen verfolgen, die context_info() setzen. Sie werden den Wert auf keine andere Weise erhalten werden können, wenn Sie einen Prozess schreiben die Ausgabe von sys.dm_exec_sessions in einer Schleife zu entleeren, während der Spur läuft:
select session_id, cast(context_info as varchar(128)) as context_info
from sys.dm_exec_sessions
where session_id > 50 -- user sessions
für SQL 2000 Sie sysprocesses verwenden können:
select spid, cast(context_info as varchar(128)) as context_info
from sysprocesses
where sid > 50 -- user sessions