6.38 SDO_NET.GENERATE_PARTITION_BLOB

構文

SDO_NET.GENERATE_PARTITION_BLOB(
     network              IN VARCHAR2,
     link_level           IN NUMBER DEFAULT 1,
     partition_id         IN VARCHAR2,
     include_user_data    IN BOOLEAN,
     log_loc              IN VARCHAR2,
     log_file             IN VARCHAR2,
     open_mode            IN VARCHAR2 DEFAULT 'A',
     preform_delta_update IN BOOLEAN DEFAULT FALSE);

説明

ネットワーク内の指定のリンク・レベルに関連付けられた指定のパーティションに対して、1つのバイナリ・ラージ・オブジェクト(BLOB)表現を生成し、その情報を既存のパーティションBLOB表に格納します。

パラメータ

network

ネットワーク名を指定します。

link_level

BLOBに含まれるリンクのリンク・レベル(デフォルトは1)を指定します。リンク・レベルは、リンクの優先順位であり、ネットワーク分析に使用すると、パスの計算時に優先順位の高いリンクが最初に考慮されます。

partition_id

パーティションID番号を指定します。リンク・レベルとパーティションIDの指定した組合せに関連付けられたネットワーク要素は、生成されたBLOBに含まれています。

include_user_data

各BLOBで表現されるネットワーク要素に関連付けられたカテゴリ0 (ゼロ)のユーザー・データについて、BLOBに含める場合はTRUE、BLOBに含めない場合はFALSEを指定します。

log_loc

ログ・ファイルのパスを特定するディレクトリ・オブジェクトを指定します。ディレクトリ・オブジェクトを作成するには、SQL*PlusコマンドのCREATE DIRECTORYを使用します。

log_file

発生する可能性があるエラーや問題など、空間ネットワーク操作に関する情報を格納するログ・ファイルを指定します。

open_mode

ログ・ファイルを開く際のモードを示す1文字のコードを指定します。Wは上書き(指定した場所および名前の既存のログ・ファイルをすべて削除し、新規ファイルを作成)、A (デフォルト)は追加(指定した既存のログ・ファイルに情報を追加)を表します。Aを指定し、そのログ・ファイルが存在しない場合は、新規ログ・ファイルが作成されます。

perform_delta_update

(将来使用するために予約されています。唯一許可されている値はFALSEであり、これがデフォルトです。)

使用上のノート

このプロシージャは、1つの新しいBLOBを追加するか、またはパーティションBLOB表内の1つの既存のBLOBを置換します。パーティションBLOB表は、あらかじめSDO_NET.GENERATE_PARTITION_BLOBSプロシージャで作成しておく必要があります。

SDO_NET.GENERATE_PARTITION_BLOBSプロシージャを使用してすべてのパーティションのBLOBを更新するのとは対照的に、複数の大きなパーティションを含むネットワークにおいて、目的のパーティションのBLOBをより短時間で更新できることも、このプロシージャの用途の1つです。

次の例では、SDO_PARTITIONEDネットワークでパーティションIDが1、リンク・レベルが1にそれぞれ関連付けられたパーティションに対してパーティションBLOBを生成し、SDO_PARTITIONED_PART_BLOB_TAB表の適切なBLOBを追加または置換します。また、ネットワーク要素に関連付けられたカテゴリ0 (ゼロ)のすべてのユーザー・データも格納します。操作に関する情報は、LOG_DIRという名前のディレクトリ・オブジェクトに関連付けられた場所にあるsdo_partitioned.logファイルに追加されます(open_mode => 'a')。

EXECUTE SDO_NET.GENERATE_PARTITION_BLOB(-
  network => 'SDO_PARTITIONED', -
  link_level => 1,-
  partition_id => 1,-
  include_user_data => true,-
  log_loc => 'LOG_DIR', log_file=> 'sdo_partitioned.log',-
  open_mode => 'a');