如何在SQL Server中检索存储过程的名称?

时间:2009-07-08 08:54:27

标签: sql-server stored-procedures

有没有办法从系统表或任何系统SP中通过某些SELECT检索存储过程的名称?

我需要检索所有存储过程名称及其签名(如果可能)或只是名称。我知道如何在MySql中执行此操作,但类似的查询不起作用(当然,因为所有系统DB的命名都不同)。

谢谢!

3 个答案:

答案 0 :(得分:5)

这应该这样做:

SELECT  name
FROM    sys.objects
WHERE   type = 'P'

ANSI方式(适用于MySQL和MS SQL)是:

SELECT  ROUTINE_NAME
FROM    INFORMATION_SCHEMA.ROUTINES
WHERE   ROUTINE_TYPE = 'PROCEDURE'

答案 1 :(得分:2)

不确定这是否适用于MySQL,但它适用于MS SQL。

exec sp_stored_procedures

答案 2 :(得分:0)

SELECT * FROM sysobjects WHERE type=’p’