4.50 SDO_TOPO_MAP.UPDATE_TOPO_MAP
構文
SDO_TOPO_MAP.UPDATE_TOPO_MAP;
説明
トポロジを更新して、現行の更新可能なTopoMapオブジェクトに対して行われた編集を反映します。
パラメータ
なし。
使用上のノート
このプロシージャは、編集セッション中、定期的にトポロジを更新する場合に使用します(「キャッシュを明示的に使用した編集処理(PL/SQL API)」を参照)。エッジ情報表、フェイス情報表およびノード情報表への更新は必要に応じて行われます(「トポロジ・データ・モデル表」を参照)。TopoMapオブジェクトは、追加の編集操作のためにオープンしたままになります。SDO_TOPO_MAP.COMMIT_TOPO_MAPプロシージャをコールするまで、更新がデータベースに実際にコミットされることはありません。
このプロシージャは、トポロジを更新する前に、TopoMapオブジェクトに対してレベル0の検証を実行します。(詳細は、SDO_TOPO_MAP.VALIDATE_TOPO_MAPファンクションのlevel
パラメータの説明を参照してください。)
TopoMapオブジェクトのロード時にインメモリーRツリー索引を作成した場合(SDO_TOPO_MAP.LOAD_TOPO_MAPファンクションまたはプロシージャでbuild_indexes
パラメータにTRUE
を指定するか、またはデフォルト値を受け入れた場合)、SDO_TOPO_MAP.CREATE_EDGE_INDEXプロシージャおよびSDO_TOPO_MAP.CREATE_FACE_INDEXプロシージャを使用して、これらの索引を再作成できます。索引のパフォーマンスを最適化するには、位相要素を数多く編集したときに、これらの索引を定期的に再作成する必要があります。
このプロシージャは、指定したTopoMapオブジェクトに関連付けられたキャッシュをクリアして、オブジェクトを読取り専用に設定するSDO_TOPO_MAP.CLEAR_TOPO_MAPプロシージャとは対照的です。
TopoMapオブジェクトのすべての変更をコミットするには、SDO_TOPO_MAP.COMMIT_TOPO_MAPプロシージャを使用します。
インメモリー・キャッシュを使用して位相要素を編集する方法の詳細は、「トポロジ・データを編集する方法」を参照してください。
このプロシージャの動作は、クライアント側のJava APIに含まれるTopoMap
クラス(「トポロジ・データ・モデルのJavaインタフェース」を参照)のupdateTopology
メソッドを使用する場合と同じです。
例
次の例では、現行の更新可能なTopoMapオブジェクトに関連付けられたトポロジを更新して、このオブジェクトに対して行われた変更を反映させます。
EXECUTE SDO_TOPO_MAP.UPDATE_TOPO_MAP;
親トピック: SDO_TOPO_MAPパッケージ・サブプログラム