CREATE MLE ENV

目的

MLE環境は、それ自体で管理可能であり、複数の実行コンテキストで再利用できる最上級のスキーマ・オブジェクトです。

MLEは、MLE言語コードを実行するために実行コンテキストを使用します。MLE環境では、そのような実行コンテキストのプロパティを構成できます。MLE言語のランタイムをカスタマイズするための言語オプションを設定できます。また、特定のモジュールを実行コンテキストにインポートできるようにして、依存関係を管理できます。

CREATE MLE ENVを使用して、次の3つのいずれかの方法でデータベースに新しいMLE環境を作成します。

MLE環境は、次の3つのいずれかの方法で作成できます。
  • 新規の空の環境として。

  • インポートのリストと言語オプション文字列を含む環境として。

  • 既存の環境のクローニングによって。環境をクローニングすると、それ以降の元の環境への変更の影響を受けない独立したコピーが作成されます。

MLE環境では、表およびプロシージャと同じ名前空間を使用します。

前提条件

ユーザーには、自分のスキーマに環境を作成するためのCREATE MLE権限が必要です。また、別のスキーマに環境を作成する場合は、CREATE ANY MLE権限が必要です。環境を作成するユーザーは、クローニングする環境を所有しているか、その環境に対するEXECUTE権限を持っている必要があります。

セマンティクス

OR REPLACE

OR REPLACEを指定すると、既存の環境を再作成できます。この句を使用すると、以前に付与したオブジェクト権限を削除、再作成、再付与することなく、既存の環境の定義を変更できます。

IF NOT EXISTS

IF NOT EXISTSを指定すると、次の効果が得られます。

  • MLE環境が存在していない場合は、文の最後に新しいMLE環境が作成されます。

  • MLE環境が存在している場合、これは文の最後の時点にあるMLE環境になります。古いものが検出されるため、新しいものは作成されません。

単一の文には、一度に1つのOR REPLACEまたはIF NOT EXISTSを指定できます。同じ文でOR REPLACEIF NOT EXISTSの両方を使用すると、ORA-11541: REPLACE and IF NOT EXISTS cannot coexist in the same DDL statementというエラーが発生します。

次の例では、空のMLE環境myenvを作成します。

CREATE MLE ENV scott."myenv";

次の例では、既存のMLE環境をクローニングします。

CREATE MLE ENV scott."myenv" CLONE "other_env";