No SQL Server Management Studio eu posso procurar ativos em vários bancos de dados?

StackOverflow https://stackoverflow.com/questions/149054

  •  02-07-2019
  •  | 
  •  

Pergunta

Meu IDE todos os dias é Eclipse, que tem um maravilhoso recurso Abrir Resource (CTRL + SHIFT + R ou Navigate> Open Resource), que permite ao usuário procurar arquivos / recursos em vários projectos.

Não consigo encontrar um recurso semelhante no SQL Server Management Studio, há um?

Foi útil?

Solução

Você pode procurar por objetos em um banco de dados SQL usando as informações de esquema Visualizações http://msdn.microsoft.com/en-us/library/ms186778. aspx Há um para tabelas, colunas, funções, sprocs, etc.

SELECT * FROM INFORMATION_SCHEMA.routines onde ROUTINE_DEFINITION like '% xp% _'

Outras dicas

No. Não há nenhum mecanismo padrão no SMS para ser capaz de pesquisar em projectos.

Você pode usar sp_MSforeachdb assim:

sp_MSforeachdb 'SELECT * FROM ?.INFORMATION_SCHEMA.routines WHERE ROUTINE_TYPE = ''PROCEDURE'''

O acima irá selecionar todos os procedimentos em todos os bancos de dados e devolvê-los em diferentes conjuntos de resultados. Usando diferentes pontos de vista, você também pode selecionar tabelas, colunas e assim por diante.

Espero que alguém tem uma melhor resposta para isso do que eu. No passado, eu usei um cursor para pesquisar todas as bases de dados e inserir os resultados em uma tabela temporária. Eu poderia, então, selecionar a tabela temporária e mostrar os resultados.

Eu não tenho esse código, que volta mais. Se ninguém vem com uma resposta melhor, eu vou voltar e editar isto com algum código real. Gostaria de pensar que haveria um DMV para isso. Qualquer um?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top