首页 > 代码库 > oracle 的 SDO_GEOMETRY
oracle 的 SDO_GEOMETRY
元数据定义
1 CREATE OR REPLACE TYPE MDSYS.SDO_GEOMETRY AS OBJECT ( 2 SDO_GTYPE NUMBER, 3 SDO_SRID NUMBER, 4 SDO_POINT SDO_POINT_TYPE, 5 SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY, 6 SDO_ORDINATES SDO_ORDINATE_ARRAY, 7 MEMBER FUNCTION GET_GTYPE 8 RETURN NUMBER DETERMINISTIC, 9 MEMBER FUNCTION GET_DIMS10 RETURN NUMBER DETERMINISTIC,11 MEMBER FUNCTION GET_LRS_DIM12 RETURN NUMBER DETERMINISTIC)13 14 ALTER TYPE SDO_GEOMETRY15 ADD MEMBER FUNCTION GET_WKB RETURN BLOB DETERMINISTIC,16 ADD MEMBER FUNCTION GET_WKT RETURN CLOB DETERMINISTIC,17 ADD MEMBER FUNCTION ST_CoordDim RETURN SMALLINT DETERMINISTIC,18 ADD MEMBER FUNCTION ST_IsValid RETURN INTEGER DETERMINISTIC,19 ADD CONSTRUCTOR FUNCTION SDO_GEOMETRY(wkt IN CLOB,20 srid IN INTEGER DEFAULT NULL) RETURN SELF AS RESULT,21 ADD CONSTRUCTOR FUNCTION SDO_GEOMETRY(wkt IN VARCHAR2,22 srid IN INTEGER DEFAULT NULL) RETURN SELF AS RESULT,23 ADD CONSTRUCTOR FUNCTION SDO_GEOMETRY(wkb IN BLOB,24 srid IN INTEGER DEFAULT NULL) RETURN SELF AS RESULT25 CASCADE
创建表
create table test_geom(id int,geom MDSYS.SDO_GEOMETRY)
使用wkt插入表
insert into test_geom(id,geom) values(2,SDO_GEOMETRY(‘point(116.6 24.343)‘,4326))
SDO_SRID定义了空间坐标参考系统。如果SDO_SRID为null,则没有指定坐标系统,如果SDO_SRID不为null,那么它的值必须在在MDSYS.CS_SRS 表中的 SRID 列有对应的值,而且它的值必须插入USER_SDO_GEOM_METADATA视图中。MDSYS.CS_SRS 表参考 图2
MDSYS.CS_SRS表 | ||
列名 | 类型 | 列名描述 |
CS_NAME | VARCHAR2(68) | 坐标系统名称 |
SRID | NUMBER(38) | 空间参考ID,为唯一值。1-999999为spatial使用的空间参考,1000000以后为用户自定义 |
AUTH_SRID | NUMBER(38) | 可选的SRID,是个外键。另一个坐标系统的SRID |
AUTH_NAME | VARCHAR2(256) |
|
WKTEXT | VARCHAR2(2046) |
|
CS_BOUNDS | MDSYS.SDO_GEOMETRY |
|
select *from MDSYS.CS_SRS,居然没有3857
参考帮助
http://docs.oracle.com/database/121/SPATL/toc.htm
oracle 的 SDO_GEOMETRY
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。