sys.internal_tables (Transact-SQL)sys.internal_tables (Transact-SQL)
Anwendungsbereich:Applies to: SQL ServerSQL Server (alle unterstützten Versionen)
SQL ServerSQL Server (all supported versions)
SQL ServerSQL Server (alle unterstützten Versionen)
SQL ServerSQL Server (all supported versions)
Gibt eine Zeile für jedes Objekt zurück, bei dem es sich um eine interne Tabelle handelt.Returns one row for each object that is an internal table. Interne Tabellen werden von SQL ServerSQL Server automatisch generiert und dienen der Unterstützung verschiedener Funktionen.Internal tables are automatically generated by SQL ServerSQL Server to support various features. Wenn Sie beispielsweise einen primären XML-Index erstellen, erstellt SQL ServerSQL Server automatisch eine interne Tabelle zur persistenten Aufbewahrung der aufgeteilten XML-Dokumentdaten.For example, when you create a primary XML index, SQL ServerSQL Server automatically creates an internal table to persist the shredded XML document data. Interne Tabellen werden im sys -Schema jeder Datenbank angezeigt und verfügen über eindeutige, vom systemgenerierte Namen, die ihre Funktion angeben, z. b. xml_index_nodes_2021582240_32001 oder queue_messages_1977058079Internal tables appear in the sys schema of every database and have unique, system-generated names that indicate their function, for example, xml_index_nodes_2021582240_32001 or queue_messages_1977058079
Interne Tabellen enthalten keine Daten, auf die von Benutzern zugegriffen werden kann. Ihre Schemas stehen fest und können nicht geändert werden.Internal tables do not contain user-accessible data, and their schema are fixed and unalterable. Sie können in Transact-SQLTransact-SQL-Anweisungen nicht auf interne Tabellennamen verweisen.You cannot reference internal table names in Transact-SQLTransact-SQL statements. Beispielsweise können Sie keine-Anweisung ausführen, z * . b <sys.internal_table_name> . Select from.For example, you cannot execute a statement such as SELECT * FROM <sys.internal_table_name>. Sie können Katalogsichten jedoch abfragen, um die Metadaten interner Tabellen anzuzeigen.However, you can query catalog views to see the metadata of internal tables.
SpaltennameColumn name | DatentypData type | BESCHREIBUNGDescription |
---|---|---|
<Columns inherited from sys.objects> | Eine Liste der Spalten, die diese Sicht erbt, finden Sie unter sys. Objects (Transact-SQL-).For a list of columns that this view inherits, see sys.objects (Transact-SQL). | |
internal_typeinternal_type | tinyinttinyint | Der Typ der internen Tabelle:Type of the internal table: 3 = query_disk_store_query_hints3 = query_disk_store_query_hints 4 = query_disk_store_query_template_parameterization4 = query_disk_store_query_template_parameterization 6 = query_disk_store_wait_stats6 = query_disk_store_wait_stats 201 = queue_messages201 = queue_messages 202 = xml_index_nodes202 = xml_index_nodes 203 = fulltext_catalog_freelist203 = fulltext_catalog_freelist 205 = query_notification205 = query_notification 206 = service_broker_map206 = service_broker_map 207 = extended_indexes (z. b. ein räumlicher Index)207 = extended_indexes (such as a spatial index) 208 = filestream_tombstone208 = filestream_tombstone 209 = CHANGE_TRACKING209 = change_tracking 210 = tracked_committed_transactions210 = tracked_committed_transactions 220 = contained_features220 = contained_features 225 = filetable_updates225 = filetable_updates 236 = selective_xml_index_node_table236 = selective_xml_index_node_table 240 = query_disk_store_query_text240 = query_disk_store_query_text 241 = query_disk_store_query241 = query_disk_store_query 242 = query_disk_store_plan242 = query_disk_store_plan 243 = query_disk_store_runtime_stats243 = query_disk_store_runtime_stats 244 = query_disk_store_runtime_stats_interval244 = query_disk_store_runtime_stats_interval 245 = query_context_settings245 = query_context_settings |
internal_type_descinternal_type_desc | nvarchar(60)nvarchar(60) | Die Beschreibung des Typs der internen Tabelle:Description of the type of internal table: QUERY_DISK_STORE_QUERY_HINTSQUERY_DISK_STORE_QUERY_HINTS QUERY_DISK_STORE_QUERY_TEMPLATE_PARAMETERIZATIONQUERY_DISK_STORE_QUERY_TEMPLATE_PARAMETERIZATION QUERY_DISK_STORE_WAIT_STATSQUERY_DISK_STORE_WAIT_STATS QUEUE_MESSAGESQUEUE_MESSAGES XML_INDEX_NODESXML_INDEX_NODES FULLTEXT_CATALOG_FREELISTFULLTEXT_CATALOG_FREELIST FULLTEXT_CATALOG_MAPFULLTEXT_CATALOG_MAP QUERY_NOTIFICATIONQUERY_NOTIFICATION SERVICE_BROKER_MAPSERVICE_BROKER_MAP EXTENDED_INDEXESEXTENDED_INDEXES FILESTREAM_TOMBSTONEFILESTREAM_TOMBSTONE CHANGE_TRACKINGCHANGE_TRACKING TRACKED_COMMITTED_TRANSACTIONSTRACKED_COMMITTED_TRANSACTIONS CONTAINED_FEATURESCONTAINED_FEATURES FILETABLE_UPDATESFILETABLE_UPDATES SELECTIVE_XML_INDEX_NODE_TABLESELECTIVE_XML_INDEX_NODE_TABLE QUERY_DISK_STORE_QUERY_TEXTQUERY_DISK_STORE_QUERY_TEXT QUERY_DISK_STORE_QUERYQUERY_DISK_STORE_QUERY QUERY_DISK_STORE_PLANQUERY_DISK_STORE_PLAN QUERY_DISK_STORE_RUNTIME_STATSQUERY_DISK_STORE_RUNTIME_STATS QUERY_DISK_STORE_RUNTIME_STATS_INTERVALQUERY_DISK_STORE_RUNTIME_STATS_INTERVAL QUERY_CONTEXT_SETTINGSQUERY_CONTEXT_SETTINGS |
parent_idparent_id | intint | ID des übergeordneten Elements, unabhängig davon, ob es über einen Schemabereich verfügt oder nicht.ID of the parent, regardless of whether it is schema-scoped or not. Andernfalls 0, wenn es kein übergeordnetes Element gibt.Otherwise, 0 if there is no parent. queue_messages = Warteschlangen object_idqueue_messages = object_id of queue xml_index_nodes = object_id des XML-Indexesxml_index_nodes = object_id of the xml index fulltext_catalog_freelist = fulltext_catalog_id des voll Text Katalogsfulltext_catalog_freelist = fulltext_catalog_id of the full-text catalog fulltext_index_map = object_id des voll Text Indexesfulltext_index_map = object_id of the full-text index query_notification oder service_broker_map = 0query_notification, or service_broker_map = 0 extended_indexes = object_id eines erweiterten Indexes, z. b. ein räumlicher Indexextended_indexes = object_id of an extended index, such as a spatial index object_id der Tabelle, für die die Tabellen Verfolgung aktiviert ist = CHANGE_TRACKINGobject_id of the table for which table tracking is enabled = change_tracking |
parent_minor_idparent_minor_id | intint | Die Neben-ID des übergeordneten Elements.Minor ID of the parent. xml_index_nodes = index_id des XML-Indexesxml_index_nodes = index_id of the XML index extended_indexes = index_id eines erweiterten Indexes, z. b. ein räumlicher Indexextended_indexes = index_id of an extended index, such as a spatial index 0 = queue_messages, fulltext_catalog_freelist, fulltext_index_map, query_notification, service_broker_map oder CHANGE_TRACKING0 = queue_messages, fulltext_catalog_freelist, fulltext_index_map, query_notification, service_broker_map, or change_tracking |
lob_data_space_idlob_data_space_id | intint | Ein Wert ungleich Null ist die ID des Datenbereichs (Dateigruppe oder Partitionsschema), der die LOB-Daten (Large Object) für diese Tabelle enthält.Non-zero value is the ID of data space (filegroup or partition-scheme) that holds the large object (LOB) data for this table. |
filestream_data_space_idfilestream_data_space_id | intint | Für zukünftige Verwendung reserviert.Reserved for future use. |
BerechtigungenPermissions
Die Sichtbarkeit der Metadaten in Katalogsichten ist auf sicherungsfähige Elemente eingeschränkt, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde.The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. Weitere Informationen finden Sie unter Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.
BemerkungenRemarks
Interne Tabellen werden in dieselbe Dateigruppe wie die übergeordnete Entität platziert.Internal tables are placed on the same filegroup as the parent entity. Sie können die in Beispiel F unten dargestellte Katalogabfrage zur Rückgabe der Anzahl von Seiten verwenden, die interne Tabellen für Daten innerhalb und außerhalb von Zeilen sowie LOB-Daten (Large Object) benötigen.You can use the catalog query shown in Example F below to return the number of pages internal tables consume for in-row, out-of-row, and large object (LOB) data.
Sie können die sp_spaceused System Prozedur verwenden, um Speicherplatz Verwendungs Daten für interne Tabellen zurückzugeben.You can use the sp_spaceused system procedure to return space usage data for internal tables. sp_spaceused meldet internen Tabellenbereich auf folgende Weise:sp_spaceused reports internal table space in the following ways:
Wird ein Warteschlangenname angegeben, wird auf die zugrunde liegende interne Tabelle, die der Warteschlange zugeordnet ist, verwiesen und ihre Speicherverwendung gemeldet.When a queue name is specified, the underlying internal table associated with the queue is referenced and its storage consumption is reported.
Seiten, die von den internen Tabellen von XML-Indizes, räumlichen Indizes und Volltextindizes verwendet werden, sind in der index_size -Spalte enthalten.Pages that are used by the internal tables of XML indexes, spatial indexes, and full-text indexes are included in the index_size column. Wenn ein Name für eine Tabelle oder eine indizierte Sicht angegeben wird, werden die Seiten für die XML-Indizes, räumliche Indizes und Volltextindizes für dieses Objekt in den reservierten und index_size Spalten eingeschlossen.When a table or indexed view name is specified, the pages for the XML indexes, spatial indexes, and full-text indexes for that object are included in the columns reserved and index_size.
BeispieleExamples
In den folgenden Beispielen wird die Abfrage von Metadaten interner Tabellen mithilfe von Katalogsichten veranschaulicht.The following examples demonstrate how to query internal table metadata by using catalog views.
A.A. Anzeigen interner Tabellen, die Spalten aus der sys.objects-Katalogsicht erbenShow internal tables that inherit columns from the sys.objects catalog view
SELECT * FROM sys.objects WHERE type = 'IT';
B.B. Zurückgeben aller Metadaten interner Tabellen (einschließlich der von sys.objects geerbten)Return all internal table metadata (including that which is inherited from sys.objects)
SELECT * FROM sys.internal_tables;
C.C. Zurückgeben von Spalten und Spaltendatentypen interner TabellenReturn internal table columns and column data types
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name
,itab.name AS internal_table_name
,typ.name AS column_data_type
,col.*
FROM sys.internal_tables AS itab
JOIN sys.columns AS col ON itab.object_id = col.object_id
JOIN sys.types AS typ ON typ.user_type_id = col.user_type_id
ORDER BY itab.name, col.column_id;
D:D. Zurückgeben der Indizes interner TabellenReturn internal table indexes
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name
, itab.name AS internal_table_name
, idx.*
FROM sys.internal_tables AS itab
JOIN sys.indexes AS idx ON itab.object_id = idx.object_id
ORDER BY itab.name, idx.index_id;
E.E. Zurückgeben der Statistiken interner TabellenReturn internal table statistics
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name
,itab.name AS internal_table_name
, s.*
FROM sys.internal_tables AS itab
JOIN sys.stats AS s ON itab.object_id = s.object_id
ORDER BY itab.name, s.stats_id;
F.F. Zurückgeben von Informationen zu Partitionen und Zuordnungseinheiten interner TabellenReturn internal table partition and allocation unit information
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name
,itab.name AS internal_table_name
,idx.name AS heap_or_index_name
,p.*
,au.*
FROM sys.internal_tables AS itab
JOIN sys.indexes AS idx
-- JOIN to the heap or the clustered index
ON itab.object_id = idx.object_id AND idx.index_id IN (0,1)
JOIN sys.partitions AS p
ON p.object_id = idx.object_id AND p.index_id = idx.index_id
JOIN sys.allocation_units AS au
-- IN_ROW_DATA (type 1) and ROW_OVERFLOW_DATA (type 3) => JOIN to partition's Hobt
-- else LOB_DATA (type 2) => JOIN to the partition ID itself.
ON au.container_id =
CASE au.type
WHEN 2 THEN p.partition_id
ELSE p.hobt_id
END
ORDER BY itab.name, idx.index_id;
G.G. Zurückgeben der Metadaten interner Tabellen für XML-IndizesReturn internal table metadata for XML indexes
SELECT t.name AS parent_table
,t.object_id AS parent_table_id
,it.name AS internal_table_name
,it.object_id AS internal_table_id
,xi.name AS primary_XML_index_name
,xi.index_id as primary_XML_index_id
FROM sys.internal_tables AS it
JOIN sys.tables AS t
ON it.parent_id = t.object_id
JOIN sys.xml_indexes AS xi
ON it.parent_id = xi.object_id
AND it.parent_minor_id = xi.index_id
WHERE it.internal_type_desc = 'XML_INDEX_NODES';
GO
H.H. Zurückgeben der Metadaten interner Tabellen für Service Broker-WarteschlangenReturn internal table metadata for Service Broker queues
SELECT q.name AS queue_name
,q.object_id AS queue_id
,it.name AS internal_table_name
,it.object_id AS internal_table_id
FROM sys.internal_tables AS it
JOIN sys.service_queues AS q ON it.parent_id = q.object_id
WHERE it.internal_type_desc = 'QUEUE_MESSAGES';
GO
I.I. Zurückgeben der Metadaten interner Tabellen für alle Service Broker-DiensteReturn internal table metadata for all Service Broker services
SELECT *
FROM tempdb.sys.internal_tables
WHERE internal_type_desc = 'SERVICE_BROKER_MAP';
GO
Weitere InformationenSee Also
Katalogsichten (Transact-SQL) Catalog Views (Transact-SQL)
Katalogsichten für Objekte (Transact-SQL)Object Catalog Views (Transact-SQL)