In SQL Server Management Studio posso cercare risorse in più database?
-
02-07-2019 - |
Domanda
Il mio IDE di tutti i giorni è Eclipse che ha una meravigliosa funzione Open Resource (CTRL + MAIUSC + R o Naviga > Open Resource) che consente all'utente di cercare file / risorse su più progetti.
Non riesco a trovare una funzionalità simile in SQL Server Management Studio, ce n'è una?
Soluzione
È possibile cercare oggetti in un database sql utilizzando le viste dello schema di informazioni http://msdn.microsoft.com/en-us/library/ms186778. aspx Ce n'è uno per tabelle, colonne, funzioni, sprocs, ecc.
seleziona * da INFORMATION_SCHEMA.routines dove ROUTINE_DEFINITION come '% xp% _'
Altri suggerimenti
Credo che questo sia quello che stai cercando: http://www.red-gate.com/products/sql- sviluppo / sql-search /
È completamente gratuito e assolutamente fantastico.
http: // www. red-gate.com/products/sql-development/sql-search/assets/images/fullview.png
No. Non esiste alcun meccanismo predefinito in SMS per poter cercare tra i progetti.
Puoi usare sp_MSforeachdb in questo modo:
sp_MSforeachdb 'SELECT * FROM ?.INFORMATION_SCHEMA.routines WHERE ROUTINE_TYPE = ''PROCEDURE'''
Quanto sopra selezionerà tutte le procedure in tutti i database e le restituirà in diversi set di risultati. Utilizzando viste diverse, puoi anche selezionare tabelle, colonne e così via.
Spero che qualcuno abbia una risposta migliore di me. In passato, ho usato un CURSORE per cercare in tutti i database e inserire i risultati in una tabella temporanea. Potrei quindi selezionare dalla tabella temporanea e mostrare i risultati.
Non ho più questo codice in giro. Se nessuno trova una risposta migliore, tornerò e lo modificherò con del codice reale. Penserei che ci sarebbe un DMV per questo. Chiunque?