Mit der Version 2005 hat Microsoft ja bekanntlich die Systemtabellen im SQL-Server umgebaut und versteckt. Man kommt nun eigentlich gar nicht mehr dran.

Aber wenn man beim SQL-Server-2005 die Liste der internen Systemtabellen sehen will, dann geht das immerhin ganz einfach:

SELECT O.object_id
, SCHEMA_NAME(O.schema_id)
+'.'+[name] AS "internal system table"
FROM sys.objects AS O
WHERE O.type=N'S'
ORDER BY O.object_id;

Und so sieht das Ergebnis aus:

object_id internal system table
4 sys.sysrowsetcolumns
5 sys.sysrowsets
7 sys.sysallocunits
8 sys.sysfiles1
13 sys.syshobtcolumns
15 sys.syshobts
25 sys.sysftinds
26 sys.sysserefs
27 sys.sysowners
28 sys.sysdbreg
29 sys.sysprivs
34 sys.sysschobjs
39 sys.syslogshippers
41 sys.syscolpars
42 sys.sysxlgns
43 sys.sysxsrvs
44 sys.sysnsobjs
45 sys.sysusermsgs
46 sys.syscerts
47 sys.sysrmtlgns
48 sys.syslnklgns
49 sys.sysxprops
50 sys.sysscalartypes
51 sys.systypedsubobjs
54 sys.sysidxstats
55 sys.sysiscols
56 sys.sysendpts
57 sys.syswebmethods
58 sys.sysbinobjs
60 sys.sysobjvalues
64 sys.sysclsobjs
65 sys.sysrowsetrefs
67 sys.sysremsvcbinds
68 sys.sysxmitqueue
69 sys.sysrts
71 sys.sysconvgroup
72 sys.sysdesend
73 sys.sysdercv
74 sys.syssingleobjrefs
75 sys.sysmultiobjrefs
76 sys.sysdbfiles
78 sys.sysguidrefs
80 sys.syschildinsts
90 sys.sysqnames
91 sys.sysxmlcomponent
92 sys.sysxmlfacet
93 sys.sysxmlplacement
94 sys.sysobjkeycrypts
95 sys.sysasymkeys
96 sys.syssqlguides
97 sys.sysbinsubobjs

Und was man damit machen kann, beschrieb ich neulich ja schon… 😉