国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle Spatial 簡介

2024-08-29 13:47:44
字體:
供稿:網(wǎng)友

  
Oracle Spatial 簡介:
        首先,Oracle 支持自定義的數(shù)據(jù)類型,你可以用數(shù)組,結(jié)構(gòu)體或者帶有構(gòu)造函數(shù),功能函數(shù)的類來定義自己的對象類型。這樣的對象類型可以用于屬性列的數(shù)據(jù)類型,也可以用來創(chuàng)建對象表。 而Oracle Spatial也正是基于此種特性所開發(fā)的一套空間數(shù)據(jù)處理系統(tǒng)。
        Spatial 的自定義數(shù)據(jù)類型有很多,都在MDSYS方案下,經(jīng)常使用的是SDO_GEOMETRY類型。SDO_GEOMETRY表示一個幾何對象,可以是點、線、面、多點、多線、多面或混合對象。
        Spatial 在此數(shù)據(jù)類型的基礎(chǔ)上,實現(xiàn)了R樹空間索引和四叉樹空間索引,還以sql函數(shù)的形式實現(xiàn)了多種空間分析功能。

Oracle Spatial 使用:
         1、將SDO_GEOMETRY數(shù)據(jù)類型作為數(shù)據(jù)表的一個列。

        CREATE TABLE cola_markets (
  mkt_id NUMBER PRIMARY KEY,
  name VARCHAR2(32),
  shape MDSYS.SDO_GEOMETRY);

        2、填寫空間元數(shù)據(jù)。

    INSERT INTO USER_SDO_GEOM_METADATA
  VALUES (
  'cola_markets',
  'shape',
  MDSYS.SDO_DIM_ARRAY(   -- 20X20 grid
    MDSYS.SDO_DIM_ELEMENT('X', 0, 20, 0.005),
    MDSYS.SDO_DIM_ELEMENT('Y', 0, 20, 0.005)
     ),
  NULL   -- SRID
);

        3、創(chuàng)建空間索引。

CREATE INDEX cola_spatial_idx
ON cola_markets(shape)
INDEXTYPE IS MDSYS.SPATIAL_INDEX;
        
        至此,空間數(shù)據(jù)表的創(chuàng)建才算正式完成 。

       4、插入空間數(shù)據(jù)。空間數(shù)據(jù)的插入要

INSERT INTO cola_markets VALUES(
  2,
  'cola_b',
  MDSYS.SDO_GEOMETRY(
    2003,  -- 2-dimensional polygon
    NULL,
    NULL,
    MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,1), -- one polygon (exterior polygon ring)
    MDSYS.SDO_ORDINATE_ARRAY(5,1, 8,1, 8,6, 5,7, 5,1)
  )
);

        5、空間分析查詢示例。

-- Return the topological difference of two geometries.
SELECT SDO_GEOM.SDO_DIFFERENCE(c_a.shape, m.diminfo, c_c.shape, m.diminfo)
  FROM cola_markets c_a, cola_markets c_c, user_sdo_geom_metadata m
  WHERE m.table_name = 'COLA_MARKETS' AND m.column_name = 'SHAPE'
  AND c_a.name = 'cola_a' AND c_c.name = 'cola_c';


八風(fēng)不動2004年11月23日涂鴉于大連

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 抚远县| 马山县| 儋州市| 陕西省| 灵台县| 叙永县| 光山县| 深圳市| 澄江县| 青神县| 南阳市| 台北市| 阳信县| 历史| 揭西县| 太保市| 建湖县| 宁强县| 平泉县| 营口市| 交口县| 镶黄旗| 闽侯县| 明光市| 孟津县| 金乡县| 通城县| 股票| 万盛区| 鹰潭市| 二手房| 新郑市| 桃园县| 嵊泗县| 广东省| 清河县| 日土县| 阜康市| 沅陵县| 宜黄县| 张家港市|