In SQL Server gibt es Systemtabellen, die sich in jeder Datenbank befinden und Informationen über die Struktur der Objekte enthalten. Zum Beispiel die Liste der Tabellen und deren Spalten. Diese Systemtabellen sind seit SQL Server 2005 unsichtbar. 2005 hat Microsoft beschlossen, sie zu verstecken und uns stattdessen Katalogansichten zur Verfügung zu stellen.
Wo befinden sich diese Ansichten tatsächlich? Sie befinden sich in einer versteckten Datenbank namens systemeresource. Dort finden wir Katalogansichten, gespeicherte Prozeduren, erweiterte gespeicherte Prozeduren usw. Es gibt viele Ansichten.
Wir haben auch die Möglichkeit, in sys.objects die Objekte zu sehen, die von Microsoft erstellt wurden, wenn wir alle Objekte betrachten, bei denen is_ms_shipped = 1 ist.
Wir können den Quellcode dieser Ansichten sehen, zum Beispiel mit der Ansicht sys.system_sql_modules, die uns die Definition der Objekte zurückgibt.
SELECT * FROM sys.system_objects;
SELECT * FROM sys.objects WHERE is_ms_shipped = 1;
SELECT OBJECT_NAME(object_id), *
FROM sys.system_sql_modules
ORDER BY OBJECT_NAME(object_id);
Tipps und Tutorials zu SQL Server auf Deutsch, für SQL Server 2017, SQL Server 2016 und alle Versionen.
Von Rudi Bruchez