Oracle创建空间表完整SQL教程
目录
功能说明Oracle创建空间表完整SQL教程
- 创建空间表
- 添加空间表视图
- 创建空间索引
- 插入空间数据
- 空间数据类型参考SDO_GEOMETRY
创建空间表
CREATE TABLE COMPANY(
id NUMBER PRIMARY KEY,
name VARCHAR2(32),
shape MDSYS.SDO_GEOMETRY);
添加空间表视图
INSERT INTO USER_SDO_GEOM_METADATA(TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES('COMPANY', 'shape',
MDSYS.SDO_DIM_ARRAY(MDSYS.SDO_DIM_ELEMENT('X', -180, 180, 0.05),
MDSYS.SDO_DIM_ELEMENT('Y', -90, -90, 0.05)
),
NULL);
//查看所有空间表视图
SELECT * FROM USER_SDO_GEOM_METADATA
//删除空间表视图
DELETE FROM USER_SDO_GEOM_METADATA WHERE TABLE_NAME='COMPANY'
创建空间索引
CREATE INDEX company_idx ON COMPANY(shape)
INDEXTYPE IS MDSYS.SPATIAL_INDEX
//如果已存在请使用pl/sql删除
插入空间数据
//点类型
INSERT INTO COMPANY VALUES(12, '名字', SDO_GEOMETRY(
2001,
NULL,
SDO_POINT_TYPE(12, 14, NULL),
NULL,
NULL
))