sp_autostats (Transact-SQL)
適用対象:SQL Server
Azure SQL Database
Azure SQL Managed Instance
インデックス、統計オブジェクト、テーブル、またはインデックス付きビューの自動統計更新オプション (AUTO_UPDATE_STATISTICS) を表示または変更します。
AUTO_UPDATE_STATISTICS オプションの詳細については、「 ALTER DATABASE SET Options (Transact-SQL)」 および 「Statistics」を参照してください。
構文
sp_autostats [ @tblname = ] 'table_or_indexed_view_name'
[ , [ @flagc = ] 'stats_flag' ]
[ , [ @indname = ] 'statistics_name' ]
引数
[ @tblname = ] 'table_or_indexed_view_name'
AUTO_UPDATE_STATISTICS オプションを表示するテーブルまたはインデックス付きビューの名前です。 table_or_indexed_view_name は nvarchar(776)で、既定値はありません。
[ @flagc = ] 'stats_flag'
AUTO_UPDATE_STATISTICS オプションを次のいずれかの値に更新します。
ON = ON
OFF = OFF
stats_flagが指定されていない場合は、現在のAUTO_UPDATE_STATISTICS設定を表示します。 stats_flag は 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 | sysname | インデックスまたは統計の名前。 |
AUTOSTATS | varchar(3) | AUTO_UPDATE_STATISTICS オプションの現在の値。 |
最終更新日 | datetime | 最新の統計更新日。 |
テーブルまたはインデックス付きビューの結果セットには、インデックスに対して作成された統計、AUTO_CREATE_STATISTICS オプションで生成された単一列の統計、 CREATE STATISTICS ステートメントで作成された統計が含まれます。
解説
指定したインデックスが無効な場合、または指定したテーブルに無効なクラスター化インデックスがある場合は、エラー メッセージが表示されます。
AUTO_UPDATE_STATISTICS はメモリ最適化テーブルでは常に OFF です。
アクセス許可
AUTO_UPDATE_STATISTICS オプションを変更するには、固定データベース ロールdb_ownerメンバーシップ n、または table_name に対する ALTER 権限 が必要です。AUTO_UPDATE_STATISTICS オプションを表示するには、 パブリック ロールのメンバーシップが必要です。
例
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 を無効にする
次の例では、テーブルのインデックスの AUTO_UPDATE_STATISTICS オプション AK_Product_Name
を Product
無効にします。
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)