Boas práticas para trabalhar com o SQL Server.
Crie o procedimento armazenado abaixo e defina a tecla de atalho,
CREATE PROCEDURE [dbo].[Searchinall]
(@strFind AS VARCHAR(MAX))
AS
BEGIN
SET NOCOUNT ON;
--TO FIND STRING IN ALL PROCEDURES
BEGIN
SELECT OBJECT_NAME(OBJECT_ID) SP_Name
,OBJECT_DEFINITION(OBJECT_ID) SP_Definition
FROM sys.procedures
WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%'+@strFind+'%'
END
--TO FIND STRING IN ALL VIEWS
BEGIN
SELECT OBJECT_NAME(OBJECT_ID) View_Name
,OBJECT_DEFINITION(OBJECT_ID) View_Definition
FROM sys.views
WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%'+@strFind+'%'
END
--TO FIND STRING IN ALL FUNCTION
BEGIN
SELECT ROUTINE_NAME Function_Name
,ROUTINE_DEFINITION Function_definition
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_DEFINITION LIKE '%'+@strFind+'%'
AND ROUTINE_TYPE = 'FUNCTION'
ORDER BY
ROUTINE_NAME
END
--TO FIND STRING IN ALL TABLES OF DATABASE.
BEGIN
SELECT t.name AS Table_Name
,c.name AS COLUMN_NAME
FROM sys.tables AS t
INNER JOIN sys.columns c
ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%'+@strFind+'%'
ORDER BY
Table_Name
END
END
Agora - defina a tecla de atalho como abaixo,
Da próxima vez, sempre que você quiser encontrar um texto específico em qualquer um dos quatro objetos Store procedure
, como Views
, Functions
e Tables
. Você só precisa escrever essa palavra-chave e pressionar a tecla de atalho.
Por exemplo: desejo pesquisar 'PaymentTable', depois escrever 'PaymentTable' e selecionar ou destacar a palavra-chave escrita no editor de consultas e pressionar a tecla de atalho ctrl+4
- ele fornecerá o resultado completo.
SCHEMA_NAME(o.schema_id) AS Schema_Name
à cláusula select.