sys.internal_tables (Transact-SQL)sys.internal_tables (Transact-SQL)

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

内部テーブルであるオブジェクトごとに 1 行のデータを返します。Returns one row for each object that is an internal table. 内部テーブルはによって自動的に生成SQL ServerSQL Serverさまざまな機能をサポートします。Internal tables are automatically generated by SQL ServerSQL Server to support various features. たとえば、プライマリ XML インデックスを作成するSQL ServerSQL Server細分の XML ドキュメントのデータを保持する内部テーブルを自動的に作成されます。For example, when you create a primary XML index, SQL ServerSQL Server automatically creates an internal table to persist the shredded XML document data. 内部テーブルに表示される、 sysすべてのデータベースのスキーマなど、その機能を示す、システムによって生成された一意の名前を持つxml_index_nodes_2021582240_32001または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

内部テーブルには、ユーザーがアクセスできるデータは含まれていません。また、そのスキーマは固定され変更できません。Internal tables do not contain user-accessible data, and their schema are fixed and unalterable. 内部テーブルの名前を Transact-SQLTransact-SQL ステートメントで参照することはできません。You cannot reference internal table names in Transact-SQLTransact-SQL statements. たとえば、SELECT などのステートメントを実行することはできません*FROM <sys.internal_table_name > します。For example, you cannot execute a statement such as SELECT * FROM <sys.internal_table_name>. ただし、カタログ ビューにクエリを実行して、内部テーブルのメタデータを表示することはできます。However, you can query catalog views to see the metadata of internal tables.

列名Column name データ型Data type 説明Description
<Sys.objects から継承された列 ><Columns inherited from sys.objects> このビューが継承する列の一覧は、次を参照してください。 sys.objects (TRANSACT-SQL)します。For a list of columns that this view inherits, see sys.objects (Transact-SQL).
internal_typeinternal_type tinyinttinyint 内部テーブルの種類。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 (など、空間インデックスの場合)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) 内部テーブルの種類の説明。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。スキーマのスコープが設定されているかどうかは関係ありません。ID of the parent, regardless of whether it is schema-scoped or not. 親が存在しない場合は 0 です。Otherwise, 0 if there is no parent.

queue_messages = object_idのキューqueue_messages = object_id of queue

xml_index_nodes = object_idの xml インデックスxml_index_nodes = object_id of the xml index

fulltext_catalog_freelist = fulltext_catalog_idのフルテキスト カタログfulltext_catalog_freelist = fulltext_catalog_id of the full-text catalog

fulltext_index_map = object_idのフルテキスト インデックスfulltext_index_map = object_id of the full-text index

query_notification、またはservice_broker_map = 0query_notification, or service_broker_map = 0

extended_indexes = object_idの空間インデックスなど拡張インデックスは、extended_indexes = object_id of an extended index, such as a spatial index

object_id表の追跡が有効になっているテーブルの = change_trackingobject_id of the table for which table tracking is enabled = change_tracking
parent_minor_idparent_minor_id intint 親のマイナー ID。Minor ID of the parent.

xml_index_nodes = index_idの XML インデックスxml_index_nodes = index_id of the XML index

extended_indexes = index_idの空間インデックスなど拡張インデックスは、extended_indexes = index_id of an extended index, such as a spatial index

0 = queue_messagesfulltext_catalog_freelistfulltext_index_mapquery_notificationservice_broker_map、または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 0 以外の値の場合、このテーブルのラージ オブジェクト (LOB) データを格納するデータ領域 (ファイル グループまたはパーティション構成) の ID。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 将来使用するために予約されています。Reserved for future use.

アクセス許可Permissions

カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。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. 詳細については、「 Metadata Visibility Configuration」を参照してください。For more information, see Metadata Visibility Configuration.

コメントRemarks

内部テーブルは、親エンティティと同じファイル グループに配置されます。Internal tables are placed on the same filegroup as the parent entity. 後半の例 F で示すカタログ クエリを使用して、内部テーブルが行内データ、行外データ、およびラージ オブジェクト (LOB) データに使用するページ数を返すことができます。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.

使用することができます、 sp_spaceusedシステム プロシージャを内部テーブルの領域使用状況データを返します。You can use the sp_spaceused system procedure to return space usage data for internal tables. sp_spaceused次の方法で内部テーブルの領域をレポートします。sp_spaceused reports internal table space in the following ways:

  • キュー名を指定すると、キューに関連付けられた基になる内部テーブルが参照され、そのストレージ使用量がレポートされます。When a queue name is specified, the underlying internal table associated with the queue is referenced and its storage consumption is reported.

  • XML インデックス、空間インデックス、およびフルテキスト インデックスの内部テーブルで使用されるページに記載されて、 index_size列。Pages that are used by the internal tables of XML indexes, spatial indexes, and full-text indexes are included in the index_size column. 列で、XML インデックス、空間インデックス、およびそのオブジェクトのフルテキスト インデックスのページが含まれているテーブルまたはインデックス付きビューの名前を指定すると、予約index_sizeします。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.

使用例Examples

次の例では、カタログ ビューを使用して内部テーブルのメタデータにクエリを実行する方法について説明します。The following examples demonstrate how to query internal table metadata by using catalog views.

A.A. sys.objects カタログ ビューから列を継承する内部テーブルを表示するShow internal tables that inherit columns from the sys.objects catalog view

SELECT * FROM sys.objects WHERE type = 'IT';  

B.B. すべての内部テーブルのメタデータ (sys.objects から継承される内容を含む) を返すReturn all internal table metadata (including that which is inherited from sys.objects)

SELECT * FROM sys.internal_tables;  

C.C. 内部テーブルの列と列のデータ型を返すReturn 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. 内部テーブルのインデックスを返すReturn 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. 内部テーブルの統計情報を返すReturn 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. 内部テーブルのパーティションとアロケーション ユニットの情報を返すReturn 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. XML インデックスに関する内部テーブルのメタデータを返すReturn 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. Service Broker キューに関する内部テーブルのメタデータを返すReturn 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. すべての Service Broker サービスに関する内部テーブルのメタデータを返すReturn internal table metadata for all Service Broker services

SELECT *   
FROM tempdb.sys.internal_tables   
WHERE internal_type_desc = 'SERVICE_BROKER_MAP';  
GO  

参照See Also

カタログ ビュー (Transact-SQL) Catalog Views (Transact-SQL)
オブジェクト カタログ ビュー (TRANSACT-SQL)Object Catalog Views (Transact-SQL)