sp_autostats (Transact-SQL)
現在のデータベース内にある指定されたテーブルまたはインデックス付きビューを対象とし、特定のまたはすべてのインデックスと統計について、自動 UPDATE STATISTICS 設定を表示または変更します。
メモ : |
---|
このストアド プロシージャのコンテキストでは、用語インデックスはテーブルまたはビューの統計情報を参照します。 |
構文
sp_autostats [ @tblname = ] 'table_name'
[ , [ @flagc = ] 'stats_flag' ]
[ , [ @indname = ] 'index_name' ]
引数
[ @tblname= ] 'table_name'
自動 UPDATE STATISTICS 設定を表示するテーブルまたはビューの名前を指定します。table_name のデータ型は nvarchar(776) で、既定値はありません。index_name を指定した場合、SQL Server 2005 ではそのインデックスに対する自動 UPDATE STATISTICS 設定が変更されます。
[ @flagc= ] 'stats_flag'
テーブル、ビュー、またはインデックスの自動 UPDATE STATISTICS 設定を指定します。
ON = 有効。
OFF = 無効。
stats_flag のデータ型は varchar(10) で、既定値は NULL です。
[ @indname= ] 'index_name'
自動 UPDATE STATISTICS 設定を有効または無効にするインデックスの名前を指定します。index_name のデータ型は sysname で、既定値は NULL です。
結果セット
stats_flag を指定した場合、このプロシージャでは実行された操作がレポートされますが、結果セットは返されません。
stats_flag を指定しない場合、sp_autostats では次の結果セットが返されます。
列名 | データ型 | 説明 |
---|---|---|
Index Name |
varchar(60) |
インデックスの名前。 |
AUTOSTATS |
varchar(3) |
現在の自動 UPDATE STATISTICS 設定。OFF または ON になります。 |
Last Updated |
datetime |
統計が最後に更新された日付。 |
解説
指定したインデックスが無効な場合、または指定したテーブルに無効なクラスタ化インデックスがある場合は、エラー メッセージが表示されます。
権限
自動 UPDATE STATISTICS 設定を変更するには、db_owner 固定データベース ロールのメンバシップ、または table_name に対する ALTER 権限が必要です。自動 UPDATE STATISTICS 設定を表示するには、public ロールのメンバシップが必要です。
戻り値
0 (成功) または 1 (失敗)
例
A. テーブルのすべてのインデックスに関する現在の状態を表示する
次の例では、Product
テーブルにあるすべてのインデックスに関する、現在の統計の状態を表示します。
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product';
B. テーブルのすべてのインデックスに対して、自動統計を有効にする
次の例では、Product
テーブルにあるすべてのインデックスの自動統計設定を有効にします。
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product', 'ON';
C. 特定のインデックスの自動統計を無効にする
次の例では、Product
テーブルにある AK_Product_Name
インデックスの自動統計設定を無効にします。
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product', 'OFF', AK_Product_Name;
参照
関連項目
データベース エンジンのストアド プロシージャ (Transact-SQL)
ALTER DATABASE (Transact-SQL)
CREATE INDEX (Transact-SQL)
CREATE STATISTICS (Transact-SQL)
DBCC SHOW_STATISTICS (Transact-SQL)
DROP STATISTICS (Transact-SQL)
sp_createstats (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)