sp_autostats (Transact-SQL)

インデックス、統計オブジェクト、テーブル、またはインデックス付きビューの自動統計更新オプション (AUTO_UPDATE_STATISTICS) を表示または変更します。

AUTO_UPDATE_STATISTICS オプションの詳細については、「ALTER DATABASE の SET オプション (Transact-SQL)」および「統計」を参照してください。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

sp_autostats [ @tblname = ] 'table_or_indexed_view_name' 
    [ , [ @flagc = ] 'stats_value' ] 
    [ , [ @indname = ] 'statistics_name' ]

引数

  • [ @tblname= ] 'table_or_indexed_view_name'
    AUTO_UPDATE_STATISTICS オプションを表示するテーブルまたはインデックス付きビューの名前を指定します。 table_or_indexed_view_name のデータ型は nvarchar(776) で、既定値はありません。

  • [ @flagc= ] 'stats_value'
    AUTO_UPDATE_STATISTICS オプションを次のいずれかの値に更新します。

    ON = ON

    OFF = OFF

    stats_flag を指定しない場合は、AUTO_UPDATE_STATISTICS の現在の設定が表示されます。 stats_value のデータ型は varchar(10) で、既定値は NULL です。

  • [ @indname= ] 'statistics_name'
    AUTO_UPDATE_STATISTICS オプションを表示または更新する統計の名前を指定します。 インデックスの統計を表示する場合は、インデックスの名前を使用できます。インデックスの名前は、対応する統計オブジェクトの名前と同じです。

    statistics_name のデータ型は sysname で、既定値は NULL です。

リターン コードの値

0 (成功) または 1 (失敗)

結果セット

stats_flag を指定した場合、sp_autostats では実行された操作がレポートされますが、結果セットは返されません。

stats_flag を指定しない場合、sp_autostats では次の結果セットが返されます。

列名

データ型

説明

Index Name

varchar(60)

インデックスまたは統計の名前。

AUTOSTATS

varchar(3)

AUTO_UPDATE_STATISTICS オプションの現在の値。

Last Updated

datetime

統計が最後に更新された日付。

テーブルまたはインデックス付きビューの結果セットには、インデックスに対して作成された統計、AUTO_CREATE_STATISTICS オプションを使用して生成された 1 列ずつの統計、および CREATE STATISTICS ステートメントを使用して作成された統計が含まれます。

説明

指定したインデックスが無効な場合、または指定したテーブルに無効なクラスター化インデックスがある場合は、エラー メッセージが表示されます。

権限

AUTO_UPDATE_STATISTICS オプションを変更するには、db_owner 固定データベース ロールのメンバーシップ、または table_name に対する ALTER 権限が必要です。AUTO_UPDATE_STATISTICS オプションを表示するには、public ロールのメンバーシップが必要です。

使用例

A. テーブルのすべての統計の状態を表示する

次の例では、Product テーブルのすべての統計の状態を表示します。

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product';
GO

B. テーブルのすべての統計の AUTO_UPDATE_STATISTICS を有効にする

次の例では、Product テーブルのすべての統計の AUTO_UPDATE_STATISTICS オプションを有効にします。

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product', 'ON';
GO

C. 特定のインデックスの AUTO_UPDATE_STATISTICS を無効にする

次の例では、Product テーブルにある AK_Product_Name インデックスの AUTO_UPDATE_STATISTICS オプションを無効にします。

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product', 'OFF', AK_Product_Name;
GO

関連項目

参照

ALTER DATABASE の SET オプション (Transact-SQL)

データベース エンジンのストアド プロシージャ (Transact-SQL)

CREATE STATISTICS (Transact-SQL)

DBCC SHOW_STATISTICS (Transact-SQL)

DROP STATISTICS (Transact-SQL)

sp_createstats (Transact-SQL)

UPDATE STATISTICS (Transact-SQL)

システム ストアド プロシージャ (Transact-SQL)

概念

統計