Oracle Spatial GeoRaster 金字塔栅格存储
发布日期:2025-04-29 12:51:33 浏览次数:16 分类:精选文章

本文共 2055 字,大约阅读时间需要 6 分钟。

Oracle Spatial GeoRaster??????

Oracle Spatial GeoRaster ?Oracle Spatial ??????????????????? raster ?????????? Oracle Spatial GeoRaster ???????????????????

1. Oracle Spatial GeoRaster ???????

? Oracle ???????????? GeoRaster ???????????????????????

1.1 ?? SDO_GEORATSER ??

CREATE TYPE SDO_GEORATSER AS OBJECT  (    rasterType NUMBER,    spatialExtent SDO_Geometry,    rasterDataTable VARCHAR2(32),    rasterID NUMBER,    metadata XMLType  );

1.2 ?? SDO_RATSER ??

CREATE TYPE SDO_RATSER AS OBJECT  (    RasterID NUMBER,    PyramidLevel NUMBER,    bandBlockNumber NUMBER,    rowBlockNumber NUMBER,    columnBlockNumber NUMBER,    blockMBR SDO_Geometry,    rasterBlock BLOB  );

2. GeoRaster ?????????

2.1 ?? GeoRaster ?

CREATE TABLE georaster_jpgs_table  (    geoid NUMBER PRIMARY KEY NOT NULL,    georatser SDO_GeORaster  );

2.2 ???????

???? SDO_GEOR_UTL.CreateDMLTrigger ????????? DML ????? GeoRaster ???????????

CALL SDO_GEOR_UTL.CreateDMLTrigger(georaster_jpgs_table, 'georatser');

2.3 GeoRaster ????????

??? GeoRaster ????? Raster ????????????????????

CREATE TABLE ratser_data_table OF SDO_RASTER  (    PRIMARY KEY (RasterID, PyramidLevel, bandBlockNumber, rowBlockNumber, columnBlockNumber)  );

3. GeoRaster ???????

3.1 GeoRaster ????????

DECLARE    geoobj SDO_GeORaster;  BEGIN    SELECT georatser INTO geoobj FROM georaster_jpgs_table    WHERE geoid = 1 FOR UPDATE;    SDO_GEOR georeference(geoobj, 82394, 1,      SDO_NUMBER_ARRAY(-28.5, 0, 1232804.04),      SDO_NUMBER_ARRAY(0, 13678.09)    );    UPDATE georaster_jpgs_table SET georatser = geoobj WHERE geoid = 1;    COMMIT;  END;

3.2 GeoRaster ????????

DECLARE    geoobj SDO_GeORaster;  BEGIN    SELECT georatser INTO geoobj FROM georaster_jpgs_table    WHERE geoid = 1 FOR UPDATE;    SDO_GEOR.generatePyramid(geoobj, 'resampling=NN');    UPDATE georaster_jpgs_table SET georatser = geoobj WHERE geoid = 1;    COMMIT;  END;

3.3 ??????

INSERT INTO georaster_jpgs_table (name, image) VALUES ('earth', SDO_GEOR.INIT('ratser_data_table'));

????????????????? Oracle Spatial GeoRaster ????????????????????

上一篇:Oracle spatial 周边查询SQL
下一篇:Oracle SOA Suit Adapter

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2026年06月22日 04时32分47秒