INDEXKEY_PROPERTY (Transact-SQL)

傳回索引鍵的相關資訊。如果是 XML 索引,則傳回 NULL。

重要事項重要事項

未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 sys.index_columns (Transact-SQL)

主題連結圖示Transact-SQL 語法慣例

語法

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )

引數

  • object_ID
    這是資料表或索引檢視的物件識別碼。object_ID 是 int

  • index_ID
    這是索引識別碼。index_ID 是 int

  • key_ID
    這是索引鍵資料行位置。key_ID 是 int

  • property
    這是將傳回的資訊所屬的屬性名稱。property 是一個字元字串,它可以是下列值之一。

    描述

    ColumnId

    在索引的 key_ID 位置之資料行識別碼。

    IsDescending

    儲存索引資料行的順序。

    1 = 遞減 0 = 遞增

傳回類型

int

例外狀況

當發生錯誤,或呼叫者沒有檢視物件的權限時,便會傳回 NULL。

使用者只能檢視使用者擁有或被授與某些權限之安全性實體的中繼資料。這表示發出中繼資料的內建函數 (例如,INDEXKEY_PROPERTY) 會在使用者不具有該物件任何權限時傳回 NULL。如需詳細資訊,請參閱<中繼資料可見性組態>和<中繼資料可見性疑難排解>。

範例

在下列範例中,會傳回 Production.Location 資料表中的索引識別碼 1 和索引鍵資料行 1 的這兩個屬性。

USE AdventureWorks2008R2;
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];

結果集如下:

Column ID   Asc or Desc order 
----------- ----------------- 
1           0

(1 row(s) affected)