sys.indexes (Transact-SQL)

テーブル、ビュー、テーブル値関数など、テーブル オブジェクトのインデックスまたはヒープごとに 1 行のデータを格納します。

列名

データ型

説明

object_id

int

インデックスが属しているオブジェクトの ID。

name

sysname

インデックスの名前。name は、オブジェクト内でのみ一意です。

NULL = ヒープ

index_id

int

インデックスの ID。index_id は、オブジェクト内でのみ一意です。

0 = ヒープ

1 = クラスタ化インデックス

> 1 = 非クラスタ化インデックス

type

tinyint

インデックスの種類。

0 = ヒープ

1 = クラスタ化

2 = 非クラスタ化

3 = XML

4 = 空間

type_desc

nvarchar(60)

インデックスの種類の説明。

HEAP

CLUSTERED

NONCLUSTERED

XML

SPATIAL

is_unique

bit

1 = インデックスは一意です。

0 = インデックスは一意ではありません。

data_space_id

int

インデックスのデータ領域の ID。データ領域は、ファイル グループまたはパーティション構成です。

0 = object_id はテーブル値関数です。

ignore_dup_key

bit

1 = IGNORE_DUP_KEY はオンです。

0 = IGNORE_DUP_KEY はオフです。

is_primary_key

bit

1 = インデックスは PRIMARY KEY 制約の一部です。

is_unique_constraint

bit

1 = インデックスは UNIQUE 制約の一部です。

fill_factor

tinyint

> 0 = インデックスが作成または再構築された場合に使用される FILLFACTOR のパーセンテージです。

0 = 既定値

is_padded

bit

1 = PADINDEX がオンです。

0 = PADINDEX がオフです。

is_disabled

bit

1 = インデックスは無効です。

0 = インデックスは無効ではありません。

is_hypothetical

bit

1 = インデックスは仮想的であり、データへのアクセス パスとして直接使用することはできません。仮想インデックスは、列レベルの統計を保持しています。

0 = インデックスは仮想的ではありません。

allow_row_locks

bit

1 = インデックスは行ロックを許可します。

0 = インデックスは行ロックを許可しません。

allow_page_locks

bit

1 = インデックスはページ ロックを許可します。

0 = インデックスはページ ロックを許可しません。

has_filter

bit

1 = インデックスにフィルタがあり、フィルタ定義を満たす行だけが含まれます。

0 = インデックスにフィルタはありません。

filter_definition

nvarchar(max)

フィルタ選択されたインデックスに含まれる行のサブセットの式。

ヒープまたはフィルタ選択されたインデックス以外のインデックスの場合は、NULL です。

権限

SQL Server 2005 以降のバージョンでは、カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。詳細については、「メタデータ表示の構成」を参照してください。