查找存储过程

查找存储过程

问题描述:

我们如何找到一个特定的存储过程。我需要找到一个我不知道在哪个数据库中的存储过程。有人可以请帮忙写剧本。查找存储过程

谢谢

哪个数据库服务器?使用MS SQL Server,您可以使用sp_help 'procname'

+1

的名称,如果这个问题没有哪个语言,平台或数据库是,的99%范围内他们的意思是C#,.net和sql-server。它似乎是一组虚拟眨眼者。 – skaffman 2009-07-08 16:36:14

如果是SQL Server 2005中您可以使用

SELECT * FROM sys.objects中其中Name = 'YOUR_NAME_HERE' 和type = 'P'

它会告诉你,如果该程序是在特定的数据库。

哪个SQL? SQL 2k/2k5/2k8有让您浏览的管理工作室。展开数据库/数据库/可编程性/存储过程

替换文本以搜索与您的字符串,这将搜索您的服务器上的所有数据库。通过使用ANSI INFORMATION_SCHEMA.ROUTINES视图

exec sp_MSforeachdb 'SELECT db=''?'', [type], [name], [text] FROM [?]..sysobjects a inner join [?]..syscomments b on a.id = b.id where text like ''%Text to search for%'' order by [name], [number]', '?' 

的一种方式,ProcNameHere改为你想要

select * from information_schema.routines 
where routine_type = 'PROCEDURE' 
and specific_name = 'ProcNameHere' 
+0

这是找到数据库中的程序员的正确方法,您可以在其中找到包含用于routine_definition的过程 – KuldipMCA 2009-07-09 13:20:11