2010-09-10 9 views
9

Mam nieaktualną procedurę składowaną, która nie powinna być już wywoływana z kodu, ale jest jakiś system, który wciąż ją wywołuje. Jest to serwer produkcyjny, więc mam bardzo ograniczony pośredni dostęp do niego w celu przeprowadzenia diagnostyki.Jak zidentyfikować wywołującego procedury przechowywanej z poziomu Sproc

Czy istnieje sposób określenia maszyny, która wywołuje określoną procedurę przechowywaną z poziomu sproc? Coś takiego jak @@ CallingMachineIP lub @@ CallingMachineName

Odpowiedz

9
select hostname from master..sysprocesses where [email protected]@SPID 

lub

select host_name from sys.dm_exec_sessions where [email protected]@SPID 
+3

+1 - Jeśli masz wiele różnych aplikacji wywołujących procedurę (Query Analyzer, Crystal Reports itp.), Możesz również wybrać "program_name", aby go zawęzić – LittleBobbyTables

5

@@SPID powinno dać aktualny identyfikator procesu.

Następnie

select * from master.dbo.sysprocesses where spid = @@SPID

można dostać to, czego potrzebujesz w jednym z tych kolumn.

Powiązane problemy