プライマリ・コンテンツに移動
Oracle® Spatial and Graph開発者ガイド
12cリリース1 (12.1)
B72470-07
目次へ移動
目次
索引へ移動
索引

前
次

24.9 SDO_LRS.CONVERT_TO_STD_LAYER

書式

SDO_LRS.CONVERT_TO_STD_LAYER(
     table_name  IN VARCHAR2, 
     column_name IN VARCHAR2 
     ) RETURN VARCHAR2;

説明

SDO_GEOMETRY型の列のすべてのジオメトリ・オブジェクト(レイヤー)を、メジャー情報を持つLRSジオメトリ・セグメントからメジャー情報を持たない標準の線ストリング・ジオメトリに変換します。また、USER_SDO_GEOM_METADATAビューのメタデータを更新します。

パラメータ

table_name

SDO_GEOMETRYオブジェクトを持つ列を含む表を指定します。

column_name

SDO_GEOMETRYオブジェクトを含むtable_nameの列を指定します。

使用上の注意

このファンクションは、変換が正常に行われた場合、またはレイヤーがすでに標準のレイヤー(メジャー情報を持たないジオメトリを含む)の場合はTRUEを戻します。また、変換が失敗した場合は例外を戻します。

column_nameにすでに空間索引が存在する場合、レイヤーの変換前にその索引を削除し、レイヤーの変換後に新しい索引を作成する必要があります。索引の削除および作成については、「空間データを索引付けするためのSQL文」に示すDROP INDEX文およびCREATE INDEX文の説明を参照してください。

このファンクションは_3D 形式(SDO_LRS.CONVERT_TO_STD_LAYER_3D)が使用可能です。LRSファンクションの3D形式については、「LRSファンクションの3D形式」を参照してください。

変換ファンクションの詳細は、「LRSジオメトリの変換」を参照してください。

次の例では、LRS_ROUTES表のROUTE_GEOMETRY列のジオメトリ・セグメントを標準フォーマットに変換します。(例では、「LRSファンクションの例」の例の定義を使用しています。)SELECT文は次元情報が削除されたことを示します(定義には、SDO_DIM_ELEMENT('M', NULL, NULL, NULL)が含まれません)。

BEGIN
  IF (SDO_LRS.CONVERT_TO_STD_LAYER('LRS_ROUTES', 'ROUTE_GEOMETRY') =  'TRUE')
    THEN
      DBMS_OUTPUT.PUT_LINE('Conversion from LRS_LAYER to STD_LAYER succeeded.');
    ELSE
      DBMS_OUTPUT.PUT_LINE('Conversion from LRS_LAYER to STD_LAYER failed.');
  END IF;
END;
.
/
Conversion from LRS_LAYER to STD_LAYER succeeded.

PL/SQL procedure successfully completed.

SELECT diminfo FROM user_sdo_geom_metadata 
   WHERE table_name = 'LRS_ROUTES' AND column_name = 'ROUTE_GEOMETRY';

DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)                             
--------------------------------------------------------------------------------
SDO_DIM_ARRAY(SDO_DIM_ELEMENT('X', 0, 20, .005), SDO_DIM_ELEMENT('Y', 0, 20, .00
5))