Como identificar tabelas dentro de uma Procedure

DBA e Consultor de Banco de Dados

Como identificar tabelas dentro de uma Procedure

Tempo de leitura: 2 minutos

Olá Pessoal,

Espero que estejam todos bem ?

A dica de hoje é bem rapidinha!!

Passando para compartilhar uma query que utilizo bastante no meu dia a dia.

Você já se deparou com a necessidade de identificar os objetos (tabelas) dentro de uma procedure?

Imaginem que você está fazendo um troubleshooting para tentar identificar a performance do seu código e percebe que a sua procedure tem milhares e milhares de linhas, olhando para diversas tabelas.

Seria bem trabalhoso validar no olho quais tabelas estão sendo utilizadas na procedure, não é mesmo?

Uma das primeiras coisas que um DBA deve verificar geralmente é como estão as amostragens das estatísticas, porém, para fazer isso precisamos saber primeiro quais são os objetos da nossa procedure.

Para esses casos, utilizo o comando abaixo :

Neste exemplo, eu queria saber quais eram os objetos presentes na procedure dbo.rpt_TopPosts_FromTopLocations. Passamos o nome da procedure como parâmetro na sys.dm_sql_referenced_entities e assim conseguimos extrair o resultado desejado.

Bem legal né??? ?

Eu usava uma query antes com o mesmo propósito, porém, o mestre Jedi Fabiano Amorim, me mostrou que a minha consulta estava trazendo alguns dados divergentes em algumas situações, com essa sacada da sys.dm_sql_referenced_entities a consulta passou a filtrar certinho os objetos. Resolvi então compartilhar com vocês pois sei da grande utilidade disso no nosso dia a dia. ?


Dica Bonus :

Com essa outra query, conseguimos facilmente identificar como estão as amostragens das estatísticas já construindo os comandos de UPDATE STATISTICS dos nossos objetos.

E ai, gostaram dessa dica?

Se gostou deixa um comentário!!!

Gustavo Larocca

Consultor SQL Server

 

 

4 comentários

  1. Dica excelente demais 😉 super útil no nosso dia a dia.

    #quedicas

  2. Meu blogueiro favorito!!! Amo suas dicas seu lindo S2!

    Abraço,
    Luiz Vitor

  3. Paulo Gonçalves dos Santos disse:

    Parabéns. Dica muito útil..Já estou utilizando

  4. Perdi a conta de quantas vezes essa dica me ajudou a resolver as tretas no dia a dia… Obrigado por compartilhar dicas sensacionais como esta… <3

Deixe uma resposta

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.