Katalogsichten (Transact-SQL)

Katalogsichten geben Informationen zurück, die von SQL Server Database Engine (Datenbankmodul) verwendet werden. Sie sollten Katalogsichten verwenden, da sie die allgemeinste Schnittstelle zu den Katalogmetadaten darstellen und die effizienteste Methode zum Abrufen, Transformieren und Präsentieren dieser Informationen in benutzerdefinierter Form bereitstellen. Alle für Benutzer verfügbaren Katalogmetadaten werden über Katalogsichten verfügbar gemacht.

HinweisHinweis

Katalogsichten enthalten keine Informationen zu Replikation, Sicherung, Datenbank-Wartungsplan oder Katalogdaten zum SQL Server-Agent.

Einige Katalogsichten erben Zeilen von anderen Katalogsichten. So erbt beispielsweise die sys.tables-Katalogsicht von der sys.objects-Katalogsicht. Die sys.objects-Katalogsicht wird als Basissicht bezeichnet, und die sys.tables-Sicht wird abgeleitete Sicht genannt. Die sys.tables-Katalogsicht gibt die Spalten zurück, die für Tabellen spezifisch sind, sowie alle Spalten, die die sys.objects-Katalogsicht zurückgibt. Die sys.objects-Katalogsicht gibt Zeilen für Objekte zurück, bei denen es sich nicht um Tabellen handelt, z. B. gespeicherte Prozeduren und Sichten. Nachdem eine Tabelle erstellt wurde, werden die Metadaten für die Tabelle in beiden Sichten zurückgegeben. Die beiden Katalogsichten geben zwar unterschiedliche Ebenen von Informationen zur Tabelle zurück, es gibt jedoch nur einen Metadateneintrag für diese Tabelle mit einem Namen und einem object_id-Wert. Dies kann wie folgt zusammengefasst werden:

  • Die Basissicht enthält eine Teilmenge der Spalten und eine Obermenge der Zeilen.

  • Die abgeleitete Sicht enthält eine Obermenge der Spalten und eine Teilmenge der Zeilen.

Wichtiger HinweisWichtig

In zukünftigen Versionen von SQL Server wird die Definition der Systemkatalogsichten von Microsoft möglicherweise erweitert, indem am Ende der Spaltenliste Spalten hinzugefügt werden. Von der Verwendung der Syntax SELECT * FROM sys.catalog_view_name im Produktionscode wird abgeraten, da sich die Anzahl der zurückgegebenen Spalten möglicherweise ändert und Ihre Anwendung dadurch beschädigt werden kann.

Die Katalogsichten in SQL Server wurden in den folgenden Kategorien organisiert: