今天开始想分析一下sde的表结构,希望能够弄明白sde一个要素类的每个Feature是如何存储的。

弄ArcSDE的人都知道,ArcSDE内一个要素类在关系数据库(以MS SQL Server为例)中有一系列的表,

每个表的作用不同。

Sde的一个FeatureClass包含以下表:



B表(与要素类名称同名,用来存储属性数据结构),表结构如下:

字段名称

类型

说明



GeometryID

Int

要素唯一ID



SHAPE

Int

似乎与GeometryID值相同,备用字段?



…..

…..

其他用户定义字段

注:如果该要素类没有注册,B表有记录,如果该要素类已经注册,B表记录相应的转移到a表





F表(f+LayerID,用来存储图形坐标、外边界矩形等图形信息)




字段名称

类型

说明



fid

Int

要素唯一ID



numofpts

Int

坐标个数(岛、洞的坐标如何计数)



entity

smallInt

要素类型代码(点、线、面)



eminx

Float

边界矩形



eminy

Float

边界矩形



emaxx

Float

边界矩形



emaxy

Float

边界矩形



eminz

Float





emaxz

Float





min_measure

Float





max_measure

Float





area

Float

面积



len

Float

长度



points

image

坐标串(具体二进制内如何存储,如何提取)









S表(s+LayerID,用来存储地物空间索引,Sde采用正方形网格索引)



字段名称

类型

说明



sp_fid

Int

要素唯一ID



gx

Int

行号((网格左下点x坐标-图形区域最小x坐标)/网格大小)



gy



列号((网格左下点y坐标-图形区域最小y坐标)/网格大小)



eminx

Int

从名字看上去是要素的边界矩形坐标。但是我添加一个要素进去后,却发现不是直接存储的地物边界矩形坐标,边界矩形的坐标在f表已经存储了,这里不知道干什么用?




eminy

Int



emaxx

Int



emaxy

Int

















A表(a+LayerID_Register,当要素类注册版本以后,该表存储原b表的数据,并记录数据状态)



字段名称

类型

说明



GeometryID

Int

要素唯一ID



SHAPE

Int

似乎与GeometryID值相同,备用字段?



SDE_STATE_ID

Int

要素状态ID(没有仔细研究,似乎每个操作就会+1)



…..

…..

其他用户定义字段









D表(d+LayerID_Register,仅当要素类注册版本之后,该表存在,并记录当前被删除的地物)



字段名称

类型

说明



SDE_STATE_ID

Int

删除要素的StateID



SDE_DELETES_ROW_ID

Int

删除要素的id



DELETED_AT

Int

删除操作的StateID?



本来想自己先看一段时间再贴出来,后来觉得个人时间、精力、能力有限,或许可以一边学一边写,

又或许有做过这项工作和对此有兴趣的同行愿意了解他,能够一起探讨

要搞清楚ArcSDE的运行机制,除了要分析他的表结构之外,还要分析其坐标串如何存储、版本信息如何记录

还有他本身自带的很多存储过程

由于本人也刚开始了解,其中如果有错误之处请多包含,并请指正,勉我在以后的过程中走弯路,谢谢先
 
 
 

Sde表结构分析的更多相关文章

  1. 设置sde表空间为自动增长

    有的用户在测试数据时,希望在SDE表空间里面不受限制地导入数据,于是需要将SDE的表空间设置为自动增长. 过程描述 1.可以在创建sde表空间的时候,添加参数Autoextend on,修改后创建命令 ...

  2. SDE表空间不足解决办法(ORA-01653)

    一.问题描述       在往空间数据库拷贝数据的时候,发生了ORA-01653的错误,提示信息如下: 这主要是因为表空间不足引起的,出现这种表空间不足的问题一般有两种情况:一种是表空间的自动扩展功能 ...

  3. PHPCMS V9数据库表结构分析

    PHPCMS V9可以轻松承载百万级的访问数据,最大的功臣就是PHPCMS良好的数据库结构,在数据库的设计方面,一定是下足了功夫.   一般网站的信息量离这个级别相差甚远,但是了解学习一下PHPCMS ...

  4. 创建SDE表空间

    创建空间数据存储类型为ST_Geometry的要素类有2种方法:1)使用SDE创建要素类从9.3 开始,默认创建的要素类都使用ST_Geometry存储空间数据,9.3 版本之前,可以通过配置dbtu ...

  5. Grafana关键表结构分析

    Grafana默认使用SQLite存储数据表,默认数据库文件存储在/var/lib/grafana/grafana.db中,可以将文件拷贝到Widnows中,使用Navicat for SQLite进 ...

  6. WordPress数据库及各表结构分析

    默认WordPress一共有以下11个表.这里加上了默认的表前缀 wp_ . wp_commentmeta:存储评论的元数据wp_comments:存储评论wp_links:存储友情链接(Blogro ...

  7. 学习计划 mysql desc表结构分析

    在完成数据表建表后,我们需要知道我们的表结构是什么,有没有和构造表时差异的地方. -- 简单查看表结构 desc 表名 这里拿数据库的一张表中做示例 mysql> desc rental; +- ...

  8. activity工作流表结构分析

    版权声明:本文为博主原创文章,未经博主允许不得转载. 1.结构设计 1.1.    逻辑结构设计 Activiti使用到的表都是ACT_开头的. ACT_RE_*: ’RE’表示repository( ...

  9. R12客户表结构分析

    客户表/联系人/PARTY关联   HZ_PARTIES 客户账户表   HZ_CUST_ACCOUNTS 例子:    select hp.party_number --客户注册标识         ...

随机推荐

  1. C语言一个简单的闹钟程序

    #include <stdio.h> #include <stdbool.h> #include <Windows.h> ; i < ; ++i) { // ...

  2. ARM菜鸟:JLINK与JTAG的区别

    调试ARM,要遵循ARM的调试接口协议,JTAG就是其中的一种.当仿真时,IAR.KEIL.ADS等都有一个公共的调试接口,RDI就是其中的一种,那么我们如何完成RDI-->ARM调试协议(JT ...

  3. html5 语音搜索

    开始以为是接口什么的,原来这就是语言搜索. 只需要在input加上x-webkit-speech <input type="text" class="text&qu ...

  4. Android百度地图开发05之公交信息检索 + 路线规划

    在上一篇blog中介绍过POI检索的使用,本篇blog主要介绍公交信息检索和线路规划的内容. 公交信息检索 实际上,公交信息检索与POI检索.在线建议检索非常相似,也是把你需要检索的信息发送给百度地图 ...

  5. 解决yum错误Error: requested datatype primary not available

    服务器信息: [mvj3@sdk2 ~]$ cat /proc/version Linux version 2.6.18-194.el5 (mockbuild@ca-build10.us.oracle ...

  6. linux fork函数与vfork函数,exit,_exit区别

    man vfork: NAME vfork - create a child process and block parent SYNOPSIS #include <sys/types.h> ...

  7. 利用SOLR搭建企业搜索平台 之——MultiCore

    Solr Multicore 是 solr 1.3 的新特性.其目是一个solr实例,可以有多个搜索应用. 下面着手来将solr给出的一个example跑出来.这篇文章是基于<利用SOLR搭建企 ...

  8. 第八篇 EBS实现企业日常业务运管模型的解决方案设计思路

    常业务运管模型企业有大有小,各行各业,千差万别,但,其日常业务运管也有相通之处,以典型的制造企业为例,其日常业务运管模型如下图所示:       (1)企业日常业务运管模型在市场经济条件下,一个生产型 ...

  9. 基于Linux的oracle数据库管理 part3( 存储 网络 常用命令 )

    主要内容 1. 常用存储模式 2. 配置网络 3. 维护指令 常用存储模式 - 文件系统 优点:管理方便, 缺点:读写慢 - 裸设备 只没有被格式化和挂载的磁盘, 只能有程序直接访问, 不能被操作系统 ...

  10. 多态and接口

    一.多态 1.什么是多态? 解析:不同的对象对于同一个操作,做出的响应不同 具有表现多种形态的能力的特征 2.使用多态的优点 解析:为了实现统一调用 一个小例子:<父类类型作为参数> 父类 ...