In SQL Server Management Studio kann ich für Vermögen über mehrere Datenbanken suchen?

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

  •  02-07-2019
  •  | 
  •  

Frage

Meine täglichen IDE Eclipse ist das eine wunderbare Ressource öffnen Funktion (CTRL + SHIFT + R oder Navigieren> Ressource öffnen) hat, die den Benutzer für Dateien / Ressourcen in mehreren Projekten suchen.

Ich kann nicht eine ähnliche Funktion in SQL Server Management Studio finden, ist es eine?

War es hilfreich?

Lösung

Sie können für Objekte in einer SQL-Datenbank suchen, um die Informationsschemasichten mit http://msdn.microsoft.com/en-us/library/ms186778. aspx Es gibt einen für Tabellen, Spalten, Funktionen, sprocs etc.

select * from INFORMATION_SCHEMA.ROUTINES wo ROUTINE_DEFINITION like '% xp% _'

Andere Tipps

Nein. Es gibt keinen Standardmechanismus in SMS können projektübergreifend suchen.

Sie könnten sp_MSforeachdb verwenden etwa so:

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

Das oben gezeigte alle Prozeduren in allen Datenbanken auswählen und sie in verschiedenen Ergebnismengen zurückgeben. Mit verschiedenen Ansichten können Sie auch auswählen, Tabellen, Spalten und so weiter.

Ich hoffe, dass jemand eine bessere Antwort auf diese Frage hat als ich. In der Vergangenheit habe ich einen Cursor verwendet, um durch alle Datenbanken suchen und einfügen Ergebnisse in eine temporäre Tabelle. Ich konnte dann aus der temporären Tabelle auswählen und die Ergebnisse zeigen.

Ich habe diesen Code nicht mehr herumliegen. Wenn niemand eine bessere Antwort kommt, komme ich zurück und bearbeiten diese mit einigen echten Code. Ich würde denken, dass es würde dafür ein DMV sein. Anyone?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top