次の方法で共有


sp_autostats (Transact-SQL)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance

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

AUTO_UPDATE_STATISTICS オプションの詳細については、「ALTER DATABASE SET オプションおよび Statistics」を参照してください。

Transact-SQL 構文表記規則

構文

sp_autostats
    [ @tblname = ] N'tblname'
    [ , [ @flagc = ] 'flagc' ]
    [ , [ @indname = ] N'indname' ]
[ ; ]

引数

[ @tblname = ] N'tblname'

AUTO_UPDATE_STATISTICS オプションを表示するテーブルまたはインデックス付きビューの名前。 @tblnamenvarchar(776)で、既定値はありません。

[ @flagc = ] 'flagc'

AUTO_UPDATE_STATISTICS オプションを更新または表示します。 @flagcvarchar(10)であり、次のいずれかの値を指定できます。

Value 説明
ON 有効
OFF Off
指定なし 現在の AUTO_UPDATE_STATISTICS 設定を表示します

[ @indname = ] N'indname'

AUTO_UPDATE_STATISTICS オプションを表示または更新する統計の名前。 @indnamesysname で、既定値は NULL です。 インデックスの統計を表示する場合は、インデックスの名前を使用できます。インデックスの名前は、対応する統計オブジェクトの名前と同じです。

リターン コードの値

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

結果セット

@flagcが指定されている場合、sp_autostatsは実行されたアクションを報告しますが、結果セットは返されません。

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

列名 データ型 説明
Index Name sysname インデックスまたは統計の名前。
AUTOSTATS varchar(3) AUTO_UPDATE_STATISTICS オプションの現在の値。
Last Updated datetime 最新の統計の更新日。

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

解説

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

AUTO_UPDATE_STATISTICS は、メモリ最適化テーブルでは常に OFF です。

アクセス許可

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

AUTO_UPDATE_STATISTICS オプションを表示するには、public ロールのメンバーシップが必要です。

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

次に、 Production.Product テーブルのすべての統計の状態を表示します。

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

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

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

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

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

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

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