INDEXPROPERTY (Transact-SQL)
Aktualisiert: 17. Juli 2006
Gibt den benannten Index- oder Statistikeigenschaftswert für eine angegebene Tabellenidentifikationsnummer (Tabellen-ID), den angegebenen Index- oder Statistiknamen und den angegebenen Eigenschaftsnamen zurück. Gibt für XML-Indizes NULL zurück.
Transact-SQL-Syntaxkonventionen
Syntax
INDEXPROPERTY ( object_ID , index_or_statistics_name , property )
Argumente
- object_ID
Ein Ausdruck, der die Objekt-ID der Tabelle oder indizierten Sicht enthält, für die die Indexeigenschaftsinformationen ermittelt werden sollen. object_ID hat den Datentyp int.
- index_or_statistics_name
Ein Ausdruck, der den Namen des Indexes oder der Statistiken enthält, für die Eigenschafteninformationen zurückgegeben werden sollen. index_or_statistics_name ist ein Wert vom Typ nvarchar(128).
property
Ein Ausdruck, der den Namen der zurückzugebenden Datenbankeigenschaft enthält. property ist ein Wert vom Datentyp varchar(128). Die folgenden Werte sind möglich.Hinweis: Wenn nicht anders angegeben, wird NULL zurückgegeben, wenn property kein gültiger Eigenschaftsname ist, object_ID keine gültige Objekt-ID ist, object_ID ein nicht unterstützter Objekttyp für die angegebene Eigenschaft ist oder der Aufrufer nicht über die Berechtigung zum Anzeigen der Metadaten des Objekts verfügt. Eigenschaft Beschreibung Wert IndexDepth
Schachtelungstiefe des Indexes.
Die Anzahl von Indexebenen.
NULL = Ungültiger XML-Index oder ungültige Eingabe.
IndexFillFactor
Der beim Erstellen oder letzten Neuerstellen des Indexes verwendete Füllfaktor.
Füllfaktor
IndexID
Index-ID des Indexes einer angegebenen Tabelle oder indizierten Sicht.
IndexID
IsAutoStatistics
Statistiken wurden durch die Option AUTO_CREATE_STATISTICS von ALTER DATABASE erzeugt.
1 = True
0 = False oder XML-Index.
IsClustered
Der Index ist gruppiert.
1 = True
0 = False oder XML-Index.
IsDisabled
Der Index ist deaktiviert.
1 = Wahr
0 = Falsch
NULL = Ungültige Eingabe.
IsFulltextKey
Der Index ist der Volltextschlüssel für eine Tabelle.
1 = True
0 = Falsch oder XML-Index.
NULL = Ungültige Eingabe.
IsHypothetical
Der Index ist hypothetisch und kann nicht direkt als Datenzugriffspfad verwendet werden. Hypothetische Indizes enthalten Statistiken auf Spaltenebene und werden vom Datenbankmodul-Optimierungsratgeber verwaltet und verwendet.
1 = True
0 = Falsch oder XML-Index
NULL = Ungültige Eingabe.
IsPadIndex
Der Index gibt den Speicherplatz an, der auf jedem inneren Knoten freigelassen werden soll.
1 = True
0 = False oder XML-Index.
IsPageLockDisallowed
Der Wert für Seitensperren wird von der Option ALLOW_PAGE_LOCKS von ALTER INDEX festgelegt.
1 = Seitensperren sind nicht zulässig.
0 = Seitensperren sind zulässig.
NULL = Ungültige Eingabe.
IsRowLockDisallowed
Der Wert für Zeilensperren wird von der Option ALLOW_ROW_LOCKS von ALTER INDEX festgelegt.
1 = Zeilensperren sind nicht zulässig.
0 = Zeilensperren sind zulässig.
NULL = Ungültige Eingabe.
IsStatistics
index_or_statistics_name sind Statistiken, die durch die CREATE STATISTICS-Anweisung oder die AUTO_CREATE_STATISTICS-Option von ALTER DATABASE erstellt werden.
1 = True
0 = False oder XML-Index.
IsUnique
Der Index ist eindeutig.
1 = True
0 = False oder XML-Index.
Rückgabetypen
int
Ausnahmen
Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.
In SQL Server 2005 kann ein Benutzer nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde. Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z. B. INDEXPROPERTY, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten und unter Behandlung von Problemen bei der Sichtbarkeit von Metadaten.
Beispiele
Im folgenden Beispiel werden die Werte für die Eigenschaften IsClustered, IndexDepth und IndexFillFactor für den PK
_Employee
_EmployeeID
-Index der Employee
-Tabelle zurückgegeben
USE AdventureWorks;
GO
SELECT
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IsClustered')AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IndexDepth') AS [Index Depth],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IndexFillFactor') AS [Fill Factor];
GO
Im Folgenden wird das Resultset aufgeführt:
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
(1 row(s) affected)
Siehe auch
Verweis
CREATE INDEX (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
sys.stats (Transact-SQL)
sys.stats_columns (Transact-SQL)
Andere Ressourcen
Indexstatistiken
Behandlung von Problemen bei der Sichtbarkeit von Metadaten
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
17. Juli 2006 |
|