2012-05-11 70 views
0

我希望SQL查詢將返回列表中的所有過程,表和函數在我的數據庫 我嘗試以下查詢程序,但不起作用返回列表中的所有過程,表和函數

SELECT NAME FROM sys.all_objects WHERE type='P' 
+0

爲什麼不直接查詢sys.procedures?無論如何,你的查詢是正確的,那麼「不工作」是什麼意思?儘管您可能想要添加'和objectpropertyex(object_id,'IsMsShipped')= 0'來過濾掉系統過程。 – Pondlife

回答

1

要返回所有的程序(除了系統程序),查詢是: -

select * from DBName.information_schema.routines where routine_type = 'PROCEDURE' 

對於所有的功能,你可以使用

SELECT name AS function_name 
,type_desc 
FROM sys.objects 
WHERE type_desc LIKE '%FUNCTION%'; 

對於所有的表,查詢是:

SELECT * FROM sys.Tables 
相關問題