Skip to content

Commit bf7db3c

Browse files
committed
Atualizacoes na sp_whocode
1 parent d6ccbcb commit bf7db3c

File tree

2 files changed

+71
-0
lines changed

2 files changed

+71
-0
lines changed

Modulos/sp.showcode.sql

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,9 @@ ALTER PROC sp_showcode (
279279
-- Remember it is a complete literal. The text must follow rules of parsename function, that is it, [schema].[object]. Literal [ or ] require use ", for example "[abc]" or ["abc"] for inverse
280280
@literal bit = 0
281281

282+
,-- only return objects where definition match that text
283+
@find nvarchar(max) = NULL
284+
282285
-- Enable some messages for debugging.
283286
,@Debug bit = 0
284287
)
@@ -975,6 +978,13 @@ begin
975978
where id = @id
976979
continue;
977980
end
981+
982+
if @find is not null and @ObjectDefinition not like @find collate database_default escape '\'
983+
begin
984+
if @Debug = 1 RAISERROR(' Object [%s].%s ignored due to @find',0,1,@DbName,@SchemaObject) with nowait;
985+
continue
986+
end
987+
978988
979989
if @mode in ('xml','export','exportgo')
980990
begin
@@ -1138,6 +1148,8 @@ begin
11381148
NCHAR(11),N'?'),NCHAR(8),N'?'),NCHAR(7),N'?'),NCHAR(6),N'?'),NCHAR(5),N'?'),NCHAR(4),N'?'),NCHAR(3),N'?'),NCHAR(2),N'?'),NCHAR(1),N'?'),
11391149
NCHAR(0),N'')
11401150
) A
1151+
WHERE
1152+
ObjectDefinition IS NOT NULL
11411153

11421154
return;
11431155
end
@@ -1177,6 +1189,8 @@ BEGIN
11771189
SELECT
11781190
CrLf = NCHAR(13)+NCHAR(10)
11791191
) V
1192+
WHERE
1193+
F.ObjectDefinition IS NOT NULL
11801194
END
11811195

11821196

Modulos/sp_showcode/exemplos.sql

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/*#info
2+
3+
# autor
4+
Rodrigo Ribeiro Gomes
5+
# descriçao
6+
Algumas demonstrações de uso da sp_showcode
7+
Usado o banco Traces, que contém o Power Alerts (https://poweralerts.com.br/)
8+
*/
9+
10+
11+
-- mostrar o codigo de procedure de usuario
12+
sp_showcode stpPowerAlert_Identity_Values
13+
sp_helptext stpPowerAlert_Identity_Values -- diferenca da sp_helptext
14+
15+
-- mostra o codigo de uma proc de sistema
16+
sp_showcode 'sp_help'
17+
18+
-- criptografada?
19+
-- Use Traces
20+
sp_showcode spencrypted
21+
22+
-- ver o codigo como xml (igual a sp_whoisactive)
23+
sp_showcode sp_help,'xml'
24+
25+
-- Listar top 50 objetos (que tem codigo) no banco atual
26+
sp_showcode '%'
27+
sp_showcode '%',@top = 0 -- todos
28+
29+
30+
-- todos os objetos que contém as palavras alert e log
31+
sp_showcode '%filegroup%'
32+
sp_showcode '%filegroup%',@all = 1 -- manda exibir todos!
33+
sp_showcode '%filegroup%','xml',@all = 1 -- manda exibir todos como xml
34+
35+
-- um objeto que não lembra o nome exato!
36+
sp_showcode '%alert%full%' -- se tiver 1, ja exibe!
37+
38+
39+
-- multiplos schemas banco atual
40+
sp_showcode '%.%test%'
41+
42+
-- em toda a instancia
43+
sp_showcode '%..%test%'
44+
sp_showcode '%..%test%','xml',@all = 1 -- tudo como xml
45+
46+
-- em um banco diferente do atual!
47+
sp_showcode 'master..ddl%'
48+
master..sp_showcode 'ddl%' -- tb vale
49+
master..sp_helptext ddl_trig_database -- curiosidade: sp_helptext nao lista triggers ddl!
50+
51+
-- colunas computadas
52+
sp_showcode '%/fl%'
53+
54+
55+
56+
57+

0 commit comments

Comments
 (0)