Daten über die Datenbank

Frage:
Die Daten einer Datenbank werden im SQL Server als Metadaten gespeichert. Wie können die Metadaten ausgewertet werden?

Lösung:
Als erste Lösung bieten sich die Schematas an.
Zu jeder Datenbank gibt es die INFORMATION_SCHEMA.XXX, die mittels Abfragen ausgewertet werden können.
Die Abfrage SELECT table_name FROM INFORMATION_SCHEMA.TABLES listet alle Benutzer-Tabellen der aktiven Datenbank auf. .

Als zweite Lösung können die Systemproceduren (sp_helbdb u.a.) benutzt werden.
sp_helpdb z.B. listet Informationen über alle oder mit dem Datenbanknamen als Parameter über eine bestimmte Datenbank auf.

Als dritte Lösung können die Systemtabellen der Datenbank ausgewertet werden.
In diesen Tabellen sind alle Informationen über die Datenbank gespeichert. Die Tabelle sysobjects beinhaltet die Informationen über alle Objekte der Datenbank.

Auswertungen auf die Systemtabellen werden von Microsoft nicht empfohlen, da die Systemtabellen bei der nächsten SQL Server-Version einen anderen Aufbau haben könnten.

/* übernommen aus der Original sqlfaq.de */