INDEXKEY_PROPERTY (Transact-SQL)
適用於:SQL Server Azure SQL 受控執行個體
傳回索引鍵的相關資訊。 如果是 XML 索引,則傳回 NULL。
重要
SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 sys.index_columns (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。 如需相關資訊,請參閱 Metadata Visibility Configuration。
範例
在下列範例中,會傳回 1
資料表中的索引識別碼 1
和索引鍵資料行 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];
以下為結果集:
Column ID Asc or Desc order
----------- -----------------
1 0
(1 row(s) affected)
另請參閱
INDEX_COL (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.objects (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)