ALTER OUTLINE

目的

ノート:

ストアド・アウトラインは非推奨になりました。ストアド・アウトラインは、下位互換性を保つために今でもサポートされています。ただし、かわりにSQL計画管理を使用することをお薦めします。SQL計画管理では、ストアド・アウトラインよりも非常に安定したSQLパフォーマンスを実現するSQL計画ベースラインが作成されます。

DBMS_SPMパッケージのMIGRATE_STORED_OUTLINEファンクションまたはEnterprise Manager Cloud Controlを使用して、既存のストアド・アウトラインをSQL計画ベースラインに移行できます。移行が完了したら、ストアド・アウトラインに移行済のマークが付けられ、削除できるようになります。DBMS_SPMパッケージのDROP_MIGRATED_STORED_OUTLINEファンクションを使用して、システム上のすべての移行済ストアド・アウトラインを削除できます。

参照: SQL計画管理の詳細は、『Oracle Database SQLチューニング・ガイド』を参照してください。DBMS_SPMパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。

ALTER OUTLINE文を使用すると、ストアド・アウトラインの名前を変更したり、ストアド・アウトラインを異なるカテゴリに再度割り当てることができます。また、アウトラインのSQL文をコンパイルし、古いアウトライン・データを現行の条件で作成したアウトラインと置き換えて、ストアド・アウトラインを再生成できます。

関連項目:

アウトラインの作成については、「CREATE OUTLINE」を参照してください。

前提条件

アウトラインを変更する場合は、ALTER ANY OUTLINEシステム権限が必要です。

構文

セマンティクス

PUBLIC | PRIVATE

PUBLICを指定すると、アウトラインのパブリック・バージョンを変更できます。これはデフォルトです。

PRIVATEを指定すると、現行のセッションに対してプライベートで、現行の解析スキーマにデータが格納されているアウトラインを変更できます。

outline

変更するアウトラインの名前を指定します。

REBUILD

REBUILDを指定すると、現行の条件で、outlineの実行計画が再生成されます。

RENAME TO句

RENAME TO句を使用すると、outlineの値と置き換えるアウトライン名を指定できます。

CHANGE CATEGORY TO句

CHANGE CATEGORY TO句を使用すると、outlineの移動先となるカテゴリ名を指定できます。

ENABLE | DISABLE

この句を使用すると、このアウトラインを選択的に使用可能または使用禁止にできます。デフォルトでは、アウトラインは使用可能になっています。DISABLEキーワードを使用すると、他のアウトラインの使用に影響を与えずに、1つのアウトラインを使用禁止にできます。

アウトラインの再構築: 例

次の文は、アウトラインのテキストをコンパイルし、古いアウトライン・データを現行の条件で作成したアウトラインと置き換えて、salariesというストアド・アウトラインを再生成します。

ALTER OUTLINE salaries REBUILD;