sys.dm_db_missing_index_columns (Transact-SQL)
Returns information about database table columns that are missing an index, excluding spatial indexes.sys.dm_db_missing_index_columns is a dynamic management function.
sys.dm_db_missing_index_columns(index_handle)
Bağımsız değişkenler
index_handle
Eksik bir dizin benzersiz olarak tanımlayan bir tamsayı.Aşağıdaki dinamik yönetimi nesnelerden elde edilebilir:
Dönen Tablo
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
column_id |
int |
Sütun KIMLIĞI. |
sütun_adı |
sysname |
Tablo sütun adı. |
column_usage |
varchar(20) |
Sütun, sorgu tarafından nasıl kullanılır.Olası değerler şunlardır:
DeğerAçıklama
EŞİTLİKSütun, formun eşitlik belirtir bir yüklemi için yaptığı katkının: tablo.sütun =constant_value
EŞİTSİZLİĞİSütun, eşitsizliği belirtir bir yüklemi için örneğin, formun bir yüklemi yaptığı katkının: table.column > constant_value"=" Dışında herhangi bir karşılaştırma işleç eşitsizliği belirtir.Karşılaştırma işleçleri tam listesi için bkz: Karşılaştırma işleçleri (Veritabanı Altyapısı).
EKLESütun bir yüklemi değerlendirmek için kullanılır, ancak başka bir nedenle, örneğin, sorguda kapsamak için kullanılır.
|
Remarks
Döndürülen bilgi sys.dm_db_missing_index_columns bir sorgu, sorgu iyileştiricisi tarafından en iyi duruma getirilmiştir ve kalıcı olmayan güncelleştirilir.Dizin bilgisi eksik yalnızca kadar tutulur SQL Server yeniden başlatılır. Sunucu geri dönüştürme sonrasında tutmak istiyorsanız, Veritabanı yöneticileri, eksik dizin bilgileri yedek kopyalarını düzenli olarak yapmalısınız.
Etkinleştirme ve eksik dizin bilgi koleksiyon devre dışı bırakma hakkında daha fazla bilgi için bkz: Eksik dizin özelliği hakkında.
Çıktısı sys.dm_db_missing_index_columns dinamik yönetim işlev karşılık gelen bir eksik dizin bilgilerini okuyabilen herhangi araç tarafından kullanılanindex_handle, bilgileri işleyen ve eksik dizin uygulayan CREATE INDEX DDL deyimi dönüştürülebilmesi.DDL) deyimleri oluşturma hakkında daha fazla bilgi için bkz: CREATE INDEX deyimleri yazma için eksik dizin bilgisi'ni kullanma.
Bu özellik sınırlamaları hakkında daha fazla bilgi için bkz: Eksik dizin özellik kısıtlamaları.
Işlem tutarlılığı
Bir işlem oluşturur veya tablo düşünceye, bırakılan nesneler eksik dizin bilgilerini içeren bir satır hareketi tutarlılık koruma bu dinamik yönetimi nesnesinden kaldırılır.Eksik dizin Dinamik yönetim nesneleri ilişkili olarak hareket tutarlılık hakkında daha fazla bilgi için bkz: Eksik dizin özelliği hakkında.
İzinler
Kullanıcı izni VIEW SERVER DURUM veya bu dinamik yönetimi işlev query VIEW SERVER DURUM izni gösterir herhangi bir izni verilmesi gerekir.
Örnekler
Aşağıdaki örnek, sorguda karşı çalışan Address Tablo'ı ve sonra da bir sorgu kullanarak çalışır sys.dm_db_missing_index_columns dinamik yönetim görünümü'dizini eksik olan tablo sütunları geri dönün.
USE AdventureWorks;
GO
SELECT City, StateProvinceID, PostalCode
FROM Person.Address
WHERE StateProvinceID = 9;
GO
SELECT mig.*, statement AS table_name,
column_id, column_name, column_usage
FROM sys.dm_db_missing_index_details AS mid
CROSS APPLY sys.dm_db_missing_index_columns (mid.index_handle)
INNER JOIN sys.dm_db_missing_index_groups AS mig ON mig.index_handle = mid.index_handle
ORDER BY mig.index_group_handle, mig.index_handle, column_id;
GO