INDEXKEY_PROPERTY (Transact-SQL)

Dotyczy:SQL ServerAzure SQL Managed Instance

Zwraca informacje o kluczu indeksowym. Zwraca NULL dla indeksów XML.

Ważna

Ta funkcja zostanie usunięta w przyszłej wersji programu SQL Server. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji. Zamiast tego użyj sys.index_columns (Transact-SQL).

Transact-SQL konwencje składni

Syntax

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )  

Arguments

object_ID
Jest numerem identyfikacyjnym obiektu w tabeli lub widoku indeksowanym. object_ID jest int.

index_ID
To numer identyfikacyjny indeksu. index_ID to inteligencja.

key_ID
To pozycja kolumny klucza indeksowego. key_ID to inteligencja.

właściwość
To nazwa nieruchomości, dla której informacje zostaną zwrócone. własność to ciąg znaków i może mieć jedną z następujących wartości.

Value Description
ColumnId ID kolumny na key_ID pozycji indeksu.
IsDescending Kolejność, w jakiej przechowywana jest kolumna indeksowa.

1 = Malejące 0 = Rosnące

Typy zwracane

int

Exceptions

Zwraca wartość NULL w przypadku błędu lub jeśli obiekt wywołujący nie ma uprawnień do wyświetlania obiektu.

Użytkownik może wyświetlać tylko metadane zabezpieczanych, które użytkownik jest właścicielem lub którym użytkownik udzielił uprawnień. Oznacza to, że funkcje emitujące metadane i wbudowane, takie jak INDEXKEY_PROPERTY, mogą zwracać NULL, jeśli użytkownik nie ma żadnych uprawnień do obiektu. Aby uzyskać więcej informacji, zobacz Konfiguracja widoczności metadanych.

Examples

W poniższym przykładzie obie właściwości są zwracane dla ID 1indeksu , kolumny 1 klucza w tabeli Production.Location .

USE AdventureWorks2022;  
GO  
SELECT   
    INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),  
        1,1,'ColumnId') AS [Column ID],  
    INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),  
        1,1,'IsDescending') AS [Asc or Desc order];  

Oto zestaw wyników:

Column ID   Asc or Desc order   
----------- -----------------   
1           0  
  
(1 row(s) affected)