O SQL Server tem uma exibição de catálogo do sistema chamada
sys.sql_dependencies
que retorna informações sobre dependências entre entidades. A Microsoft marcou essa exibição como obsoleta, o que significa que ela está em modo de manutenção e pode ser removida em uma versão futura do SQL Server. Você deve evitar usar
sys.sql_dependencies
em um novo trabalho de desenvolvimento, e você deve modificar os aplicativos que o usam atualmente para usar sys.sql_expression_dependencies
em vez de. As
sys.sql_expression_dependencies
a exibição do catálogo do sistema retorna todas as dependências em uma entidade definida pelo usuário no banco de dados atual. Isso inclui dependências entre funções escalares definidas pelo usuário compiladas nativamente e outros módulos do SQL Server. Você pode usar essa visualização para:
- Entidades de retorno que dependem de uma determinada entidade
- Entidades de retorno das quais uma determinada entidade depende
Por exemplo, você pode usá-lo para retornar todos os objetos que fazem referência a uma tabela específica. Você também pode usá-lo para retornar todos os objetos que um procedimento armazenado específico faz referência em seu código.
Para obter mais informações e exemplos, consulte minha postagem:Localizar dependências no SQL Server:sql_expression_dependencies.
Não tem certeza se você está usando sys.sql_dependencies atualmente?
Se você não tiver certeza se seu sistema usa
sys.sql_dependencies
, você sempre pode usar sys.dm_os_performance_counters
descobrir. Você pode usar essa exibição de gerenciamento dinâmico do sistema para retornar uma contagem de quantas vezes cada recurso preterido foi encontrado desde que o SQL Server foi iniciado. Confira a maneira mais rápida de encontrar recursos obsoletos que ainda estão sendo usados em uma instância do SQL Server para obter mais informações e exemplos. Um método mais elaborado é usar eventos estendidos para criar um arquivo de log que contém informações extras sobre cada uso do recurso obsoleto. Por exemplo, você pode registrar informações como a instrução SQL que contém o recurso obsoleto, o usuário que o executou, a hora em que foi executado, o banco de dados em que estava e muito mais. Consulte Usando eventos estendidos para registrar recursos obsoletos sendo usados em uma instância do SQL Server para obter instruções passo a passo sobre como fazer isso.
Referência de documentação da Microsoft
- sys.sql_dependencies
- sys.sql_expression_dependencies
- Recursos do mecanismo de banco de dados obsoletos no SQL Server 2017
- Recursos do mecanismo de banco de dados obsoletos no SQL Server 2016 (igual à lista de 2017)