14.63 SHARING句
SHARING
句は、アプリケーションのメンテナンスの場合にアプリケーション・ルートにオブジェクトを作成する場合にのみ適用されます。このタイプのオブジェクトはアプリケーション共通オブジェクトと呼ばれ、アプリケーション・ルートに属するアプリケーションPDBと共有できます。
SHARING
句は、これらのSQL文を使用してアプリケーション共通のPL/SQLオブジェクトおよびSQLオブジェクトを作成する場合に使用できます。
表14-2 アプリケーション共通オブジェクト・タイプ別で可能な共有属性の概要
アプリケーション共通オブジェクトの文 | 使用可能なSHARING属性 | 構文およびセマンティックス |
---|---|---|
CREATE ANALYTIC VIEW | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE ATTRIBUTE DIMENSION | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE CLUSTER | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE CONTEXT | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE DIRECTORY | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE FUNCTION | METADATA、NONE | CREATE FUNCTION文 |
CREATE HIERARCHY | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE INDEXTYPE | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE JAVA | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE LIBRARY | METADATA、NONE | CREATE LIBRARY文 |
CREATEMATERIALIZEDVIEWLOG | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE OPERATOR | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE PROCEDURE | METADATA、NONE | CREATE PROCEDURE文 |
CREATE PACKAGE | METADATA、NONE | CREATE PACKAGE文 |
CREATE PACKAGE BODY | METADATA、NONE | CREATE PACKAGE BODY文 |
CREATE SEQUENCE | METADATA、DATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE SYNONYM | METADATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE TABLE | METADATA、DATA、EXTENDED DATA、NONE | 『Oracle Database SQL言語リファレンス』 |
CREATE TRIGGER | METADATA、NONE | CREATE TRIGGER文 |
CREATE TYPE | METADATA、NONE | CREATE TYPE文 |
CREATE TYPE BODY | METADATA、NONE | CREATE TYPE BODY文 |
CREATE VIEW | METADATA、DATA、EXTENDED DATA、NONE | 『Oracle Database SQL言語リファレンス』 |
構文
sharing_clause ::=
セマンティクス
sharing_clause
次の共有属性のいずれかを使用してオブジェクトを共有する方法を指定します。
-
METADATA
: メタデータ・リンクはメタデータを共有しますが、そのデータは各コンテナに固有です。このタイプのオブジェクトは、メタデータリンク・アプリケーション共通オブジェクトと呼ばれます。 -
NONE
- オブジェクトは共有されず、アプリケーション・ルートでのみアクセスできます。
アプリケーションの操作中にこの句を省略すると、データベースではDEFAULT_SHARING
初期化パラメータが使用され、オブジェクトの共有属性が決定されます。DEFAULT_SHARING
初期化パラメータに値がない場合、デフォルトはMETADATA
です。
SHARING
句の制限
共有句は、アプリケーション・ルートでのアプリケーションのインストール、アップグレードまたはパッチ適用時にのみ使用できます。 ALTER PLUGGABLE DATABASE APPLICATION ... BEGIN
文を発行して操作を開始し、ALTER PLUGGABLE DATABASE APPLICATION ... END
文を発行して操作を終了する必要があります。このコンテキスト以外のsharing_clauseは不正であり、オブジェクトが共有されないことを意味します。
オブジェクトの共有属性を作成後に変更することはできません。
通常、共通オブジェクトはローカル・オブジェクトに依存できません。このルールには次の例外があります。
- 作成される共通オブジェクトがシノニムである
- 作成される共通オブジェクトがローカル演算子に依存している
この2つの例外を除き、ローカル・オブジェクトに依存する共通オブジェクトを作成しようとすると、ローカル・オブジェクトが作成されます。
関連トピック
その他のドキュメント:
-
アプリケーションのメンテナンスの詳細は、Oracle Database概要を参照してください
-
自動化によるアプリケーションへのパッチ適用の例は、Oracle Database概要を参照してください
-
DEFAULT_SHARING
初期化パラメータの詳細は、Oracle Databaseリファレンスを参照してください -
ALL_OBJECTS
ビューの初期化、SHARING
列およびAPPLICATION
列の詳細は、Oracle Databaseリファレンスを参照してください -
アプリケーション共通オブジェクトの作成の詳細は、『Oracle Database管理者ガイド』を参照してください。