Aracılığıyla paylaş


INDEXPROPERTY (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnalytics Platform Sistemi (PDW)Microsoft Fabric'te SQL Veritabanı

Belirtilen tablo tanımlama numarasının, dizin veya istatistik adının ve özellik adının adlandırılmış dizin veya istatistik özellik değerini döndürür. XML dizinleri için döndürür NULL .

Transact-SQL söz dizimi kuralları

Sözdizimi

INDEXPROPERTY ( object_ID , index_or_statistics_name , property )

Arguments

object_ID

Dizin özelliği bilgilerinin sağlandığı tablonun veya dizine alınan görünümün nesne tanımlama numarasını içeren ifade. object_IDint.

index_or_statistics_name

Özellik bilgilerinin döndürüleceği dizin veya istatistiklerin adını içeren ifade. index_or_statistics_namenvarchar(128) şeklindedir.

özellik

Döndürülecek dizin veya istatistik özelliğinin adını içeren ifade. özelliğivarchar(128) şeklindedir ve bu değerlerden biri olabilir.

Uyarı

Aksi belirtilmedikçe, NULLözellik geçerli bir özellik adı olmadığında, object_ID geçerli bir nesne kimliği olmadığında, object_ID belirtilen özellik için desteklenmeyen bir nesne türü olduğunda veya çağıranın nesnenin meta verilerini görüntüleme izni olmadığında döndürülür.

Mülkiyet Description Değer
IndexDepth Dizinin derinliği. Dizin düzeylerinin sayısı.

NULL = XML dizini veya girişi geçerli değil.
IndexFillFactor Dizin oluşturulurken veya en son yeniden oluşturulurken kullanılan dolgu faktörü değeri. Dolgu faktörü
IndexID Belirtilen tablodaki veya dizine alınan görünümdeki dizinin dizin kimliği. Dizin Kimliği
IsAutoStatistics İstatistikler seçeneği tarafından AUTO_CREATE_STATISTICS oluşturulmuştur ALTER DATABASE. 1 = Doğru
0 = False veya XML dizini.
IsClustered Dizin kümelenmiş. 1 = Doğru
0 = False veya XML dizini.
IsDisabled Dizin devre dışı bırakıldı. 1 = Doğru
0 = Yanlış
NULL = Giriş geçerli değil.
IsFulltextKey Dizin, bir tablonun tam metin ve semantik dizin oluşturma anahtarıdır. 1 = Doğru
0 = False veya XML dizini.
NULL = Giriş geçerli değil.
IsHypothetical Dizin varsayımsaldır ve doğrudan veri erişim yolu olarak kullanılamaz. Varsayımsal dizinler sütun düzeyinde istatistikleri tutar ve Veritabanı Altyapısı Ayarlama Danışmanı tarafından korunur ve kullanılır. 1 = Doğru
0 = False veya XML dizini
NULL = Giriş geçerli değil.
IsPadIndex Dizin, her iç düğümde açık bırakacak alanı belirtir. 1 = Doğru
0 = False veya XML dizini.
IsPageLockDisallowed sayfa kilitleme değeri seçeneğiyle ALLOW_PAGE_LOCKSALTER INDEXayarlanır. 1 = Sayfa kilitlemeye izin verilmiyor.
0 = Sayfa kilitlemeye izin verilir.
NULL = Giriş geçerli değil.
IsRowLockDisallowed seçeneği ALLOW_ROW_LOCKStarafından ALTER INDEX ayarlanan satır kilitleme değeri. 1 = Satır kilitlemeye izin verilmiyor.
0 = Satır kilitlemeye izin verilir.
NULL = Giriş geçerli değil.
IsStatistics index_or_statistics_name , deyimi veya seçeneği tarafından CREATE STATISTICSAUTO_CREATE_STATISTICS oluşturulan istatistiktir ALTER DATABASE. 1 = Doğru
0 = False veya XML dizini.
IsUnique Dizin benzersizdir. 1 = Doğru
0 = False veya XML dizini.
IsColumnstore Dizin, bellek için iyileştirilmiş bir columnstore dizinidir. 1 = Doğru
0 = Yanlış

için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümler.
IsOptimizedForSequentialKey Dizinde son sayfa eklemeleri için iyileştirme etkinleştirildi. 1 = Doğru
0 = Yanlış

için geçerlidir: SQL Server 2019 (15.x) ve sonraki sürümler.

Dönüş türleri

int

Exceptions

Bir NULL çağıranın nesneyi görüntüleme izni yoksa hata döndürür.

Bir kullanıcı yalnızca kullanıcıya ait olan veya kullanıcıya izin verilen güvenli hale getirilebilir öğeler meta verilerini görüntüleyebilir. Bu, gibi meta veri yayan yerleşik işlevlerin INDEXPROPERTY , kullanıcının nesne üzerinde herhangi bir izni yoksa döndürebileceği NULL anlamına gelir. Daha fazla bilgi için bkz. Meta veri görünürlüğü yapılandırması.

Örnekler

Bu makaledeki kod örnekleri, AdventureWorks2025 giriş sayfasından indirebileceğiniz AdventureWorksDW2025 veya örnek veritabanını kullanır.

A. Çalışan tablosundaki dizin için dönüş özellikleri

Aşağıdaki örnek, AdventureWorks2025 veritabanındaki tablonun Employee indeksinin değerlerini IndexDepthve IndexFillFactor özelliklerini PK_Employee_BusinessEntityID döndürürIsClustered.

SELECT
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IsClustered') AS [Is Clustered],
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexDepth') AS [Index Depth],
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexFillFactor') AS [Fill Factor];

Sonuç kümesi aşağıdadır.

Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1            2           0

Örnekler: Azure Synapse Analytics ve Analytics Platform Sistemi (PDW)

B. FactResellerSales tablosunda dizin için dönüş özellikleri

Aşağıdaki örnek, tablodaki dizinlerden FactResellerSales birinin özelliklerini inceler.

SELECT
    INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsClustered') AS [Is Clustered],
    INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsColumnstore') AS [Is Columnstore Index],
    INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IndexFillFactor') AS [Fill Factor];
GO