En SQL Server Management Studio, ¿puedo buscar activos en múltiples bases de datos?

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

  •  02-07-2019
  •  | 
  •  

Pregunta

Mi IDE de todos los días es Eclipse, que tiene una maravillosa función de recursos abiertos (CTRL + MAYÚS + R o Navegar > recurso abierto) que permite al usuario buscar archivos / recursos en varios proyectos.

No puedo encontrar una característica similar en SQL Server Management Studio, ¿hay alguna?

¿Fue útil?

Solución

Puede buscar objetos en una base de datos sql usando las Vistas de esquema de información http://msdn.microsoft.com/en-us/library/ms186778. aspx Hay uno para tablas, columnas, funciones, sprocs, etc.

selecciona * de INFORMATION_SCHEMA.routines donde ROUTINE_DEFINITION como '% xp% _'

Otros consejos

No. No hay ningún mecanismo predeterminado en SMS para poder buscar entre proyectos.

Podrías usar sp_MSforeachdb así:

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

Lo anterior seleccionará todos los procedimientos en todas las bases de datos y los devolverá en diferentes conjuntos de resultados. Usando diferentes vistas, también puede seleccionar tablas, columnas, etc.

Espero que alguien tenga una mejor respuesta a esto que yo. En el pasado, he usado un CURSOR para buscar en todas las bases de datos e insertar resultados en una tabla temporal. Entonces podría seleccionar de la tabla temporal y mostrar los resultados.

Ya no tengo este código. Si a nadie se le ocurre una respuesta mejor, volveré y editaré esto con un código real. Pensaría que habría un DMV para esto. ¿Alguien?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top