我的数据库中有大量存储过程,我想在编写新过程之前看看其中一个是否能完成我的任务。我将如何仅搜索现有存储过程的名称(而不是内容)?
问问题
129 次
4 回答
4
SQL Server 2005+:
SELECT name FROM sys.procedures WHERE name LIKE '%search_text%';
SQL Server 2000:
SELECT name FROM sysobjects WHERE name LIKE '%search_text%' AND xtype = 'P';
另一个好主意是建立一个合理的命名模式。如果您的命名约定是一致且合乎逻辑的,那么您根本不需要搜索。
于 2012-08-29T19:49:57.760 回答
0
SELECT DISTINCT OBJECT_NAME(id)
FROM syscomments
WHERE OBJECT_NAME(id)
LIKE '%search_text%'
于 2012-08-29T19:45:28.137 回答
0
SELECT name
FROM sys.objects
WHERE type = 'P'
AND name LIKE '%search_text%'
于 2012-08-29T19:49:32.873 回答
-1
上述方法都很好用,但更简单的方法是从 Red Gate 下载 SQL Search 的副本。它是一个免费的实用程序,可插入 SSMS 并允许您搜索整个服务器中的所有对象。
于 2012-08-30T02:55:52.063 回答