Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İç tablo olan her nesne için bir satır döndürür. İç tablolar sql server tarafından çeşitli özellikleri desteklemek için otomatik olarak oluşturulur. Örneğin, birincil XML dizini oluşturduğunuzda SQL Server, parçalanmış XML belge verilerini kalıcı hale getirmek için otomatik olarak bir iç tablo oluşturur. İç tablolar her veritabanının sys şemasında görünür ve işlevlerini gösteren benzersiz, sistem tarafından oluşturulan adlara sahiptir, örneğin veya xml_index_nodes_2021582240_32001queue_messages_1977058079.
| Sütun adı | Veri türü | Açıklama |
|---|---|---|
Devralınan sütunlar sys.objects |
Bu görünümün devraldığı sütunların listesi için bkz. sys.objects. | |
internal_type |
tinyint | İç tablonun türü: 3 = QUERY_DISK_STORE_QUERY_HINTS4 = QUERY_DISK_STORE_QUERY_TEMPLATE_PARAMETERIZATION6 = QUERY_DISK_STORE_WAIT_STATS201 = QUEUE_MESSAGES202 = XML_INDEX_NODES203 = FULLTEXT_CATALOG_FREELIST204 = FULLTEXT_INDEX_MAP205 = QUERY_NOTIFICATION206 = SERVICE_BROKER_MAP207 = EXTENDED_INDEXES (uzamsal dizin gibi)208 = FILESTREAM_TOMBSTONE209 = CHANGE_TRACKING210 = TRACKED_COMMITTED_TRANSACTIONS220 = CONTAINED_FEATURES225 = FILETABLE_UPDATES236 = SELECTIVE_XML_INDEX_NODE_TABLE240 = QUERY_DISK_STORE_QUERY_TEXT241 = QUERY_DISK_STORE_QUERY242 = QUERY_DISK_STORE_PLAN243 = QUERY_DISK_STORE_RUNTIME_STATS244 = QUERY_DISK_STORE_RUNTIME_STATS_INTERVAL245 = QUERY_CONTEXT_SETTINGS |
internal_type_desc |
nvarchar(60) | İç tablo türünün açıklaması:QUERY_DISK_STORE_QUERY_HINTSQUERY_DISK_STORE_QUERY_TEMPLATE_PARAMETERIZATIONQUERY_DISK_STORE_WAIT_STATSQUEUE_MESSAGESXML_INDEX_NODESFULLTEXT_CATALOG_FREELISTFULLTEXT_INDEX_MAPQUERY_NOTIFICATIONSERVICE_BROKER_MAPEXTENDED_INDEXESFILESTREAM_TOMBSTONECHANGE_TRACKINGTRACKED_COMMITTED_TRANSACTIONSCONTAINED_FEATURESFILETABLE_UPDATESSELECTIVE_XML_INDEX_NODE_TABLEQUERY_DISK_STORE_QUERY_TEXTQUERY_DISK_STORE_QUERYQUERY_DISK_STORE_PLANQUERY_DISK_STORE_RUNTIME_STATSQUERY_DISK_STORE_RUNTIME_STATS_INTERVALQUERY_CONTEXT_SETTINGS |
parent_id |
Int | Şema kapsamına sahip olup olmamasına bakılmaksızın üst öğe kimliği. Aksi takdirde, 0 ebeveyn yoksa.queue_messages
=
object_id kuyrukxml_index_nodes
=
object_id XML dizinininfulltext_catalog_freelist
=
fulltext_catalog_id tam metin kataloğununfulltext_index_map
=
object_id tam metin dizinininquery_notificationveya service_broker_map = 0extended_indexes
=
object_id uzamsal dizin gibi genişletilmiş bir dizininobject_id tablo izlemenin etkinleştirildiği tablonun = change_tracking |
parent_minor_id |
Int | Üst öğeye ait ikincil kimlik.xml_index_nodes
=
index_id XML dizinininextended_indexes
=
index_id uzamsal dizin gibi genişletilmiş bir dizinin0
=
queue_messages, fulltext_catalog_freelist, fulltext_index_map, query_notification, , service_broker_mapveya change_tracking |
lob_data_space_id |
Int | Sıfır olmayan değer, bu tablo için büyük nesne (LOB) verilerini tutan veri alanının (dosya grubu veya bölüm şeması) kimliğidir. |
filestream_data_space_id |
Int | Gelecekte kullanım için ayrılmıştır. |
İç tablolar kullanıcı tarafından erişilebilen veriler içermez ve şemaları sabittir ve değiştirilemez. Transact-SQL deyimlerinde iç tablo adlarına başvuramazsınız. Örneğin, gibi SELECT * FROM <sys.internal_table_name>bir deyimi yürütemezsiniz. Ancak, iç tabloların meta verilerini görmek için katalog görünümlerini sorgulayabilirsiniz.
İzinler
Katalog görünümlerindeki meta verilerin görünürlüğü, kullanıcının sahip olduğu veya kullanıcıya bazı izinlerin verildiği güvenli hale getirilebilir öğelerle sınırlıdır. Daha fazla bilgi için bkz. meta veri görünürlüğü yapılandırması .
Açıklamalar
İç tablolar üst varlıkla aynı dosya grubuna yerleştirilir. İç tabloların satır içi, satır dışı ve büyük nesne (LOB) verileri için kullandığı sayfa sayısını döndürmek için Örnek F'de gösterilen katalog sorgusunu kullanabilirsiniz.
İç tablolar için alan kullanım verilerini döndürmek için sp_spaceused sistem yordamını kullanabilirsiniz.
sp_spaceused iç tablo alanını aşağıdaki yollarla raporlar:
Bir kuyruk adı belirtildiğinde, kuyrukla ilişkili temel alınan iç tabloya başvurulur ve depolama tüketimi bildirilir.
XML dizinlerinin, uzamsal dizinlerin ve tam metin dizinlerinin iç tabloları tarafından kullanılan sayfalar sütuna
index_sizeeklenir. Tablo veya dizinli görünüm adı belirtildiğinde, xml dizinleri, uzamsal dizinler ve bu nesnenin tam metin dizinleri için sayfalar veindex_sizesütunlarınareservedeklenir.
Örnekler
Aşağıdaki örneklerde, katalog görünümlerini kullanarak iç tablo meta verilerini sorgulama işlemi gösterilmektedir.
A. Sys.objects katalog görünümünden sütunları devralan iç tabloları gösterme
SELECT * FROM sys.objects WHERE type = 'IT';
B. Tüm iç tablo meta verilerini döndür (sys.objects dosyasından devralınan veriler dahil)
SELECT * FROM sys.internal_tables;
C. İç tablo sütunlarını ve sütun veri türlerini döndürme
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
INNER JOIN sys.columns AS col
ON itab.object_id = col.object_id
INNER JOIN sys.types AS typ
ON typ.user_type_id = col.user_type_id
ORDER BY itab.name, col.column_id;
D. İç tablo dizinlerini döndürme
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name,
itab.name AS internal_table_name,
idx.*
FROM sys.internal_tables AS itab
INNER JOIN sys.indexes AS idx
ON itab.object_id = idx.object_id
ORDER BY itab.name, idx.index_id;
E. İç tablo istatistiklerini döndürme
SELECT SCHEMA_NAME(itab.schema_id) AS schema_name,
itab.name AS internal_table_name,
s.*
FROM sys.internal_tables AS itab
INNER JOIN sys.stats AS s
ON itab.object_id = s.object_id
ORDER BY itab.name, s.stats_id;
F. İç tablo bölümü ve ayırma birimi bilgilerini döndürme
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
INNER 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)
INNER JOIN sys.partitions AS p
ON p.object_id = idx.object_id
AND p.index_id = idx.index_id
INNER 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. XML dizinleri için iç tablo meta verilerini döndürme
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
INNER JOIN sys.tables AS t
ON it.parent_id = t.object_id
INNER 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. Hizmet Aracısı kuyrukları için iç tablo meta verilerini döndürme
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
INNER JOIN sys.service_queues AS q
ON it.parent_id = q.object_id
WHERE it.internal_type_desc = 'QUEUE_MESSAGES';
GO
Ben. Tüm Hizmet Aracısı hizmetleri için iç tablo meta verilerini döndürme
SELECT * FROM tempdb.sys.internal_tables
WHERE internal_type_desc = 'SERVICE_BROKER_MAP';
GO