DELETE_COLUMN_STATS プロシージャは、列レベルの統計情報を削除するために使用されます。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
DBMS_STATS.DELETE_COLUMN_STATS (
ownname VARCHAR2,
tabname VARCHAR2,
colname VARCHAR2,
partname VARCHAR2 DEFAULT NULL,
cascade_parts BOOLEAN DEFAULT TRUE,
no_invalidate BOOLEAN DEFAULT FALSE,
force BOOLEAN DEFAULT FALSE,
col_stat_type VARCHAR2 DEFAULT 'ALL');
パラメータの説明
| パラメータ | 説明 |
|---|---|
| ownname | ユーザー名。ユーザー名を NULL に設定した場合、現在ログインしているユーザー名がデフォルトで使用されます。 |
| tabname | この列が属するテーブルの名前。 |
| colname | 列名または拡張名。 |
| partname | 統計情報を格納するテーブルのパーティション名。 テーブルがパーティション化されており、partname が NULL の場合、統計情報はグローバルテーブルレベルに格納されます。 |
| cascade_parts | パーティションレベルおよびサブパーティションレベルの統計情報を同時に削除するかどうか。デフォルトは TRUE です。 |
| no_invalidate | 統計情報収集時にPlan Cacheをフラッシュするかどうか。TRUE に設定すると、統計情報収集時にPlan Cacheをフラッシュしません。 |
| force | 強制的に収集し、ロック状態を無視するかどうか。デフォルトは FALSE です。 TRUE に設定すると、統計情報がロックされていても収集されます。 |
| col_stat_type | 列レベルの統計情報を削除する際のタイプ。このパラメータの値は以下のとおりです:
|
異常時
| エラーコード | 説明 |
|---|---|
| OBE-20000 | 対象のオブジェクトが存在しないか、権限が不足しています。 |
| OBE-20005 | 対象のオブジェクトの統計情報がロックされています。 |
使用方法
このプロシージャを呼び出すには、テーブルの所有者である必要があります。SYS テナント内のオブジェクトについては、テーブルの所有者または SYSDBA 権限を持っている必要があります。
例
ユーザー testUser01 のテーブル tbl1 の col1 列のすべての統計情報を削除します。
obclient> CALL DBMS_STATS.DELETE_COLUMN_STATS('testUser01', 'tbl1', 'col1',col_stat_type=>'ALL');
Query OK, 0 rows affected