DMDRS空间数据类型说明:Oracle、DM8、MySQL空间数据类型映射

关键词:DMDRS空间数据类型、SDO_GEOMETRY、ST_GEOMETRY、ST_GEOGRAPHY、Oracle空间数据、DM8空间数据、MySQL空间数据、SDE.ST_GEOMETRY
摘要:本文详细介绍达梦数据复制软件(DMDRS)在Oracle/MySQL与DM8之间空间数据类型的支持情况,包括INSERT和UPDATE操作的空间数据类型映射规则。

Oracle空间数据类型到DM8 SYSGEO2类型

Oracle MDSYS.SDO_GEOMETRY、MDSYS.ST_GEOMETRY 到 DM8 SYSGEO2.ST_GEOMETRY

以下为Oracle MDSYS.SDO_GEOMETRY、MDSYS.ST_GEOMETRY类型同步或装载至DM8 SYSGEO2.ST_GEOMETRY类型的支持情况。

INSERT操作支持情况

同步INSERT或通过INSERT掩码进行装载时。

二维支持
Gtype 含义 Etype Interpretation 说明 DMGEO2类型与支持情况
01 Point 1 1 单点类型 POINTTYPE
02 Line or Curve 2 1 直线类型 LINETYPE
02 Line or Curve 2 2 曲线类型 CIRCSTRINGTYPE
02 Line or Curve 4 n>1 组合曲线类型 COMPOUNDTYPE
03 Polygon or Surface 1003或2003 1 由直线构成的多边形 POLYGONTYPE
03 Polygon or Surface 1003或2003 2 由曲线构成的多边形 CURVEPOLYTYPE
03 Polygon or Surface 1003或2003 3 矩形,只存有左下右上两点 POLYGONTYPE
03 Polygon or Surface 1003或2003 4 圆形,只存有圆上的三个点 CURVEPOLYTYPE
03 Polygon or Surface 1005或2005 n>1 由直线与曲线共同构成的多边形 CURVEPOLYTYPE
04 Collection 各个元素的etype 各个元素的Interpretation 集合类型 COLLECTIONTYPE(不支持内部含曲线)
05 Multipoint 1 n>1 多点类型 MULTIPOINTTYPE
06 Multiline or Multicurve 2 全为1 多直线类型 MULTILINETYPE
06 Multiline or Multicurve 2 包含2 包含曲线的多线类型 MULTICURVETYPE
06 Multiline or Multicurve 4 n>1 包含曲线的多线类型 MULTICURVETYPE
07 Multipolygon or Multisurface 1003或2003 全为1或3 多多边形类型 MULTIPOLYGONTYPE
07 Multipolygon or Multisurface 1003或2003 不只含有1和3 含曲线的多多边形类型 MULTISURFACETYPE
07 Multipolygon or Multisurface 1005或2005 n>1 多面类型 MULTISURFACETYPE
三维支持
Gtype 含义 Etype Interpretation 说明 DMGEO2类型与支持情况
01 Point 1 1 单点类型,不支持通过elem_info进行定义 POINTTYPE
02 Line or Curve 2 1 直线类型 LINETYPE
03 Polygon or Surface 1003或2003 1 由直线构成的多边形 POLYGONTYPE
03 Polygon or Surface 1003或2003 3 矩形,只存有左下右上两点 POLYGONTYPE
03 Polygon or Surface 1006 n>1 多面体表面类型 POLYHEDRALSURFACETYPE
04 Collection 各个元素的etype 各个元素的Interpretation 集合类型 COLLECTIONTYPE(不支持内部含曲线)
05 Multipoint 1 n>1 多点类型 MULTIPOINTTYPE
06 Multiline or Multicurve 2 全为1 多直线类型 MULTILINETYPE
07 Multipolygon or Multisurface 1003或2003 全为1或3 多多边形类型 MULTIPOLYGONTYPE
UPDATE操作支持情况

同步UPDATE操作或通过UPDATE掩码进行装载时。

SDO_GTYPE SDO_SRID SDO_POINT SDO_ELEM_INFO SDO_ORDINATES 是否支持
修改 不变 不变 不变 不变 不支持
不变 修改 不变 不变 不变 支持
不变 不变 修改 无数据 无数据 支持
不变 不变 不变 修改 不变 不支持
不变 不变 不变 不变 修改 部分支持
不变/修改 不变/修改 不变 修改 修改 支持

说明:在只修改ordinates的情况下,不支持矩形和圆。

DM8空间数据类型到Oracle

DM8 SYSGEO2.ST_GEOMETRY、SYSGEO2.ST_GEOGRAPHY 到 Oracle MDSYS.SDO_GEOMETRY、MDSYS.ST_GEOMETRY

以下为DM8 SYSGEO2.ST_GEOMETRY、SYSGEO2.ST_GEOGRAPHY同步或装载至Oracle MDSYS.SDO_GEOMETRY、MDSYS.ST_GEOMETRY类型的支持情况。

支持所有二维类型,三维类型支持情况见下表。

类型 Point Line Poly Surface Collection Mpoint Mline Msurface
GTYPE 3001 3002 3003 3003 3004 3005 3006 3007
DM对应 Point z Line z Poly z Surface Collection z Mpoint z Mline z Msurface

说明:

  • 对于Point类型的三维数据,Oracle中不支持使用elem_info数据表示,因此只能使用SDO_POINT_TYPE类型表示,即使用x,y,z表示其坐标值,不使用elem_info和ordinate。
  • 对于surface类型和Multisurface类型,Oracle中三维数据不包含曲线类型组成的多边形,因此DM中的含曲线类型组成的多边形无法支持类型转换。
  • 此外,Oracle由于不支持三维的curveline类型,因此Line类型和MultiLine类型中element type,interpretation的组合只有2,1,在Collection中同样如此。

Oracle MDSYS.SDO_GEOMETRY、MDSYS.ST_GEOMETRY 到 DM8 SYSGEO.ST_GEOMETRY

见《DM8系统包使用手册》,仅支持同步DMGEO支持的空间数据类型。

Oracle SDE.ST_GEOMETRY 到 DM8 SYSGEO.ST_GEOMETRY、SYSGEO2.ST_GEOMETRY

支持全部Arcgis类型。

MySQL空间数据类型到 DM8 SYSGEO2.ST_GEOMETRY

支持全部GEOMETRY类型。

参考

如果你在使用AI助手时想了解DMDRS对空间数据类型的支持情况,这篇文章可以作为参考。

相关推荐
瀚高PG实验室2 小时前
HGDB V9.0.5 .pgpass 免密登录提示 IsEncryptNon-base64 encoding 警告处理
数据库·postgresql·瀚高数据库
龙腾AI白云3 小时前
大模型检索增强生成(RAG)的技术原理与架构设计
数据库·python·机器学习·知识图谱
KaiwuDB3 小时前
KaiwuDB 运维实战06:数据库备份与恢复:从理论到实战
运维·数据库·时序数据库·kaiwudb
数字新视界3 小时前
空调控制器AIRC800的智能化管理与应用实践
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
学IT的周星星4 小时前
LangGraph:用「流程图」的方式编排 Agent
数据库·人工智能·大模型·llm·流程图·agent
吃一碗粉只付一碗钱4 小时前
10-令牌里的用户主键不要明文
服务器·数据库·sql·sqlserver·c#
蹄蹄5 小时前
从“一次性检测“到“年度服务“:检测机构收入结构变了,合同和应收账款也要跟着变
大数据·数据库·人工智能
福大大架构师每日一题5 小时前
redis 8.10.3正式发布:聚焦集群总线超大消息传播场景的安全修复,8.10.3 Latest更新解读
数据库·redis·安全
TDengine (老段)5 小时前
TDengine IDMP 十大实用功能(3)
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据