6.101 SDO_NET.UPDATE_FEATURE

構文

SDO_NET.UPDATE_FEATURE(      
  feature_layer_id   IN NUMBER,      
  feature_id         IN NUMBER,      
  feature_elements   IN SDO_NET_FEAT_ELEM_ARRAY DEFAULT NULL,      
  child_feature_ids  IN SDO_NET_LAYER_FEAT_ARRAY DEFAULT NULL,      
  check_integrity    IN BOOLEAN DEFAULT TRUE);

説明

フィーチャ・レイヤー内のフィーチャを更新します。

パラメータ

feature_layer_id

フィーチャを更新するフィーチャ・レイヤーのIDを指定します。

feature_id

更新されるフィーチャのIDを指定します。

feature_elements

既存のフィーチャ要素に追加する、フィーチャのフィーチャ要素を指定します。このパラメータがNULLの場合、既存のフィーチャ要素は変更されません。このパラメータがの場合、既存のフィーチャ要素は削除されます。(SDO_NET_FEAT_ELEM_ARRAY型の詳細は、「フィーチャ・モデリングに使用するデータ型」を参照してください。)

child_feature_ids

既存の子フィーチャに追加する、フィーチャの子フィーチャを指定します。このパラメータがNULLの場合、既存の子フィーチャは変更されません。このパラメータがの場合、子フィーチャとの、このフィーチャの既存の親関係は削除されます。(SDO_NET_LAYER_FEAT_ARRAY型の詳細は、「フィーチャ・モデリングに使用するデータ型」を参照してください。)

check_integrity

TRUE (デフォルト)を指定すると、入力ネットワーク要素が存在するかどうかを確認し、存在しない場合はエラーが生成されます。FALSEを指定すると、入力ネットワーク要素が存在するかどうかを確認しません。

使用上のノート

フィーチャをフィーチャ・レイヤーに追加するには、SDO_NET.ADD_FEATUREプロシージャを使用します。

フィーチャ・レイヤーIDは、フィーチャ・レイヤーに対して自動的に生成されます。

次の例では、2つのフィーチャ要素を定義して追加することによって、指定したフィーチャを更新します。

DECLARE
  feature_layer_id NUMBER;
  feature_id NUMBER := 1;
  elements SDO_NET_FEAT_ELEM_ARRAY := SDO_NET_FEAT_ELEM_ARRAY();
  link_id NUMBER := 1314;
BEGIN
  feature_layer_id := sdo_net.get_feature_layer_id('GRID', 'POI');
  elements.extend;
  elements(1) := SDO_NET_FEAT_ELEM(SDO_NET.FEAT_ELEM_TYPE_POL, link_id, 0.7, null);
  elements.extend;
  elements(2) := SDO_NET_FEAT_ELEM(SDO_NET.FEAT_ELEM_TYPE_POL, link_id, 0.8, null);
  sdo_net.update_feature(feature_layer_id, feature_id, elements, null);
END;
/