2012-05-04 23 views

回答

17

您可以查詢sys.procedures和sys.parameters ...

select pr.name, p.* 
from sys.procedures pr 
inner join sys.parameters p on pr.object_id = p.object_id 

並加入到類型太...

select pr.name, p.*, t.name, t.max_length 
from sys.procedures pr 
inner join sys.parameters p on pr.object_id = p.object_id 
inner join sys.types t on p.system_type_id = t.system_type_id 
3

您還可以使用

select * from INFORMATION_SCHEMA.PARAMETERS 
1

您還可以使用

select * from INFORMATION_SCHEMA.ROUTINES \G; 
0
SELECT 
    p.name AS [SP Name], qs.execution_count, 
    ISNULL(qs.execution_count/DATEDIFF(Second, qs.cached_time, GETDATE()), 0) AS [Calls/Second], 
    qs.total_worker_time/qs.execution_count AS [AvgWorkerTime], qs.total_worker_time AS [TotalWorkerTime], 
    qs.total_elapsed_time, qs.total_elapsed_time/qs.execution_count AS [avg_elapsed_time], 
    qs.cached_time, 
    isr.ROUTINE_DEFINITION 
FROM sys.procedures AS p 
INNER JOIN sys.dm_exec_procedure_stats AS qs 
ON p.[object_id] = qs.[object_id] 
Inner Join INFORMATION_SCHEMA.ROUTINES as ISR 
on p.name = isr.SPECIFIC_NAME 
WHERE qs.database_id = DB_ID() 
    and 
    isr.ROUTINE_DEFINITION like '%XXXX%' -- name of something you are looking for in the stored procedure 

ORDER BY qs.execution_count DESC OPTION (RECOMPILE); 
+2

請[編輯]更多的信息加入他們的行列。只有代碼和「嘗試這個」的答案是[灰心](// meta.stackexchange.com/questions/196187),因爲它們不包含可搜索的內容,也不能解釋爲什麼有人應該「嘗試這個」。我們在這裏努力成爲知識的資源。 – Mogsdad

0

對於使用SQL 2000

SELECT * FROM [dbName]..sysobjects WHERE xtype = 'P' 

SELECT * FROM [dbName]..sysComments 

通過ID

相關問題