SQL Server中搜索功能的快捷方式

SQL Server中搜索功能的快捷方式,sql,sql-server,sql-server-2008,tsql,keyboard-shortcuts,Sql,Sql Server,Sql Server 2008,Tsql,Keyboard Shortcuts,我想为下面的SQL代码创建快捷方式 DECLARE @Proc_Name VARCHAR(255) SET @Proc_Name ='norway' SELECT * FROM sys.tables WHERE name LIKE '%' + @Proc_Name + '%' 现在我正在使用下面的快捷方式 然后我键入{LIKE'%test%}并按Ctrl+8 但是我想使它的格式更加简化,就像我可以键入{test}并按Ctrl+8键一样,这样我就可以快速使用它 我尝试了不同的方法,比如创建pr

我想为下面的SQL代码创建快捷方式

DECLARE @Proc_Name VARCHAR(255)
SET @Proc_Name ='norway'
SELECT * FROM sys.tables WHERE name LIKE '%' + @Proc_Name + '%'
现在我正在使用下面的快捷方式

然后我键入{LIKE'%test%}并按Ctrl+8

但是我想使它的格式更加简化,就像我可以键入{test}并按Ctrl+8键一样,这样我就可以快速使用它

我尝试了不同的方法,比如创建proc>然后执行>并将其放在快捷键上。有关更多信息,请访问以下链接:

谢谢


Vishal

我将以下存储过程添加到SQL Server上的主数据库中

USE [master]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[SP_FindAllReferences]
@targetText nvarchar(128)
AS
BEGIN
    SET NOCOUNT ON;

    declare @origdb nvarchar(128)
    select @origdb = db_name()

    declare @sql nvarchar(1000)

    set @sql = 'USE [' + @origdb +'];' 
    set @sql += 'select object_name(m.object_id), m.* '
    set @sql += 'from sys.sql_modules m  where m.definition like N' + CHAR(39) + '%' + @targetText + '%' + CHAR(39)

    exec (@sql)

    SET NOCOUNT OFF;
END
然后,我将dbo.SP_findallreference添加到我的一个SSMS键盘快捷键中,这样我就可以在服务器上任何DB的上下文中搜索文本

例如,如果我在SSMS查询窗口中键入user,突出显示它并按快捷组合键,那么我将获得当前数据库中包含user的每个存储过程的列表

如果将我的选择替换为

set @sql = 'USE [' + @origdb +'];' 
set @sql += 'Select * FROM sys.tables WHERE name LIKE N' + CHAR(39) + '%' + @targetText + '%' + CHAR(39)

然后你就能实现你的目标。

DeanOC:谢谢!!!我真的很欣赏你的方法。太棒了。但在我的情况下,我无法访问Master来执行此操作。所以我试图在一个键上创建、执行和删除proc,这样就没有人会知道我创建了一些供个人使用的过程,因为它一旦使用就被删除了。很抱歉,我们需要任何其他方法。。但你的方法令人失望。