sys.allocation_units (Transact-SQL)

データベース内のアロケーション ユニットごとに 1 行のデータを格納します。

列名

データ型

説明

allocation_unit_id

bigint

アロケーション ユニットの ID。データベース内で一意です。

type

tinyint

アロケーション ユニットの種類。

0 = 削除済み

1 = 行内データ (LOB データ型を除くすべてのデータ型)

2 = ラージ オブジェクト (LOB) データ (text、ntext、image、xml、大きな値の型、および CLR ユーザー定義型)

3 = 行オーバーフロー データ

type_desc

nvarchar(60)

アロケーション ユニットの種類の説明。

  • DROPPED

  • IN_ROW_DATA

  • LOB_DATA

  • ROW_OVERFLOW_DATA

container_id

bigint

アロケーション ユニットと関連するストレージ コンテナの ID。

type = 1 または 3 の場合、container_id = sys.partitions.hobt_id になります。

type = 2 の場合、container_id = sys.partitions.partition_id になります。

0 = 遅延削除のマークが付いたアロケーション ユニット

data_space_id

int

アロケーション ユニットが存在するファイル グループの ID。

total_pages

bigint

アロケーション ユニットにより割り当てまたは予約されたページの総数。

used_pages

bigint

実際に使用される総ページ数。

data_pages

bigint

次のデータが含まれている使用済みのページ数。

  • 行内データ

  • LOB データ

  • 行オーバーフロー データ

返される値には、内部インデックス ページとアロケーション管理ページは含まれません。

注意

大きなインデックスを削除または再構成した場合や、大きなテーブルを削除するか切り捨てた場合、データベース エンジンでは実際のページ割り当て解除とそれに関連するロックが、トランザクションがコミットされるまで延期されます。削除操作が延期された場合、割り当てられた領域は、すぐには解放されません。このため、ラージ オブジェクトを削除するか切り捨てた直後に sys.allocation_units を実行して返された値は、実際に使用できるディスク領域を反映していないことがあります。遅延割り当ての詳細については、「ラージ オブジェクトの削除と再構築」を参照してください。

権限

public ロールのメンバシップが必要です。詳細については、「メタデータ表示の構成」を参照してください。