sys.indexes (Transact-SQL)
針對每個表格式物件 (如資料表、檢視或資料表值函式) 索引或堆積,各包含一個資料列。
適用於:SQL Server (SQL Server 2008 透過目前版本)、Windows Azure SQL 資料庫 (初始版本,透過目前版本)。 |
資料行名稱 |
資料類型 |
描述 |
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
object_id |
int |
這個索引所屬物件的識別碼。 |
||||||||||||||||
name |
sysname |
索引的名稱。 name 只在物件內才是唯一的。 NULL = 堆積 |
||||||||||||||||
index_id |
int |
索引的識別碼。 index_id 只在物件內才是唯一的 0 = 堆積 1 = 叢集索引 > 1 = 非叢集索引 |
||||||||||||||||
類型 |
tinyint |
索引的類型:
|
||||||||||||||||
type_desc |
nvarchar(60) |
索引類型的描述:
|
||||||||||||||||
is_unique |
bit |
1 = 索引是唯一的。 0 = 索引不是唯一的。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
data_space_id |
int |
這個索引的資料空間識別碼。 資料空間是一個檔案群組或分割區結構描述。 0 = object_id 是資料表值函式或記憶體內部索引。 |
||||||||||||||||
ignore_dup_key |
bit |
1 = IGNORE_DUP_KEY 是 ON。 0 = IGNORE_DUP_KEY 是 OFF。 |
||||||||||||||||
is_primary_key |
bit |
1 = 索引是 PRIMARY KEY 條件約束的一部分。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
is_unique_constraint |
bit |
1 = 索引是 UNIQUE 條件約束的一部分。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
fill_factor |
tinyint |
> 0 = 當建立或重建索引時,所用的 FILLFACTOR 百分比。 0 = 預設值 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
is_padded |
bit |
1 = PADINDEX 是 ON。 0 = PADINDEX 是 OFF。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
is_disabled |
bit |
1 = 索引已停用。 0 = 索引未停用。 |
||||||||||||||||
is_hypothetical |
bit |
1 = 索引是假設的,無法直接當作資料存取路徑來使用。 假設的索引用來存放資料行層級的統計資料。 0 = 索引不是假設的。 |
||||||||||||||||
allow_row_locks |
bit |
1 = 索引允許資料列鎖定。 0 = 索引不允許資料列鎖定。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
allow_page_locks |
bit |
1 = 索引允許頁面鎖定。 0 = 索引不允許頁面鎖定。 永遠是 0,表示叢集資料行存放區索引。 |
||||||||||||||||
has_filter |
bit |
1 = 索引有篩選,而且只包含滿足篩選定義的資料列。 0 = 索引沒有篩選。 |
||||||||||||||||
filter_definition |
nvarchar(max) |
包含在已篩選之索引內的資料列子集運算式。 NULL 代表堆積或非篩選的索引。 |
權限
目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。 如需詳細資訊,請參閱<中繼資料可見性組態>。
範例
下列範例會傳回 AdventureWorks2012 資料庫中 Production.Product 資料表的所有索引。
SELECT i.name AS index_name
,i.type_desc
,is_unique
,ds.type_desc AS filegroup_or_partition_scheme
,ds.name AS filegroup_or_partition_scheme_name
,ignore_dup_key
,is_primary_key
,is_unique_constraint
,fill_factor
,is_padded
,is_disabled
,allow_row_locks
,allow_page_locks
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0 AND i.index_id <> 0
AND i.object_id = OBJECT_ID('Production.Product');
GO
請參閱
參考
sys.index_columns (Transact-SQL)
sys.xml_indexes (Transact-SQL)
sys.key_constraints (Transact-SQL)
sys.partition_schemes (Transact-SQL)