32.2 CHANGE_GEOM_METADATAプロシージャ

このプロシージャは、空間メタデータ・レコードを変更します。

構文

APEX_SPATIAL.CHANGE_GEOM_METADATA (
    p_table_name        IN VARCHAR2,
    p_column_name       IN VARCHAR2,
    p_new_table_name    IN VARCHAR2 DEFAULT NULL,
    p_new_column_name   IN VARCHAR2 DEFAULT NULL,
    p_diminfo           IN mdsys.sdo_dim_array,
    p_srid              IN t_srid );
    

パラメータ

表32-1 CHANGE_GEOM_METADATAのパラメータ

パラメータ 説明

p_table_name

機能表の名前。

p_column_name

mdsys.sdo_geometryの列の名前。

p_new_table_name

機能表の新しい名前(または現行値のままの場合はnull)。

p_new_column_name

mdsys.sdo_geometryの列の新しい名前(または現行値のままの場合はnull)。

p_diminfo

ディメンションごとにエントリが1つあり、ディメンション順のSDO_DIM_ELEMENT配列。

p_srid

列の全ジオメトリに対する座標系のSRID値。

次に示すコードは、列CITIES.SHAPE.のディメンションを変更します。

begin
    for l_meta in ( select *
                         from user_sdo_geom_metadata
                        where table_name  = 'CITIES'
                          and column_name = 'SHAPE' )
    loop
        apex_spatial.change_geom_metadata (
            p_table_name  => l_meta.table_name,
            p_column_name => l_meta.column_name,
            p_diminfo     => SDO_DIM_ARRAY (
                             SDO_DIM_ELEMENT('X', -180, 180, 0.1),
                                    SDO_DIM_ELEMENT('Y',  -90,  90, 0.1) ),
        p_srid        => l_meta.srid );
    end loop;
end;