今天开始想分析一下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. iOS js oc相互调用(JavaScriptCore)(二)

    下来我们使用js调用iOS js调用iOS分两种情况 一,js里面直接调用方法 二,js里面通过对象调用方法 首先我们看第一种,直接调用方法. 其中用到了iOS的block 上代码 -(void)we ...

  2. 面向 Java 开发人员的 Ajax: 构建动态的 Java 应用程序

    面向 Java 开发人员的 Ajax: 构建动态的 Java 应用程序 Ajax 为更好的 Web 应用程序铺平了道路 在 Web 应用程序开发中,页面重载循环是最大的一个使用障碍,对于 Java™ ...

  3. inno setup判断是Windows系统版本(其实还是Delphi代码,还能检查域控制器和家庭版)

    1.设置Windows最低版本要求 [Setup]: MinVersion 格式: a.bb,c.dd,这里 a.bb 是 Windows 版本,c.dd 是 Windows NT 版本. 默认值: ...

  4. 进入第一个Android应用界面

    前话 距离上次学习Android已经过去了半年了,这半年我干嘛去了? 嘛相信大家也没兴趣了解,简单来说就是我学习了周边的知识技术,最后终于转回Android. 感觉开发一个Android需要很多知识吧 ...

  5. Oracle ->> Oracle下实现SQL Server的TOP + APPLY

    今晚很好奇想知道Oracle下有没有APPLY子句?如果有那怎么实现SQL Server下的TOP + APPLY.结果自己写了个例子. with a as ( order by grp_factor ...

  6. java读取package中的properties文件java.util.MissingResourceException

    文件结构: /build/classes/d914/Hello.class /build/classes/d914/mess.properties /build/classes/d914/mess_z ...

  7. Linux 下Git的安装和配置

    Git是分布式的版本控制系统,实际上是不需要固定的服务器的,Git与svn的最大区别是,它的使用流程不需要联机,可以先将对代码的修改,评论,保存在本机.等上网之后,再实时推送过去.同时它创建分支与合并 ...

  8. Docker —— 用于统一开发和部署的轻量级 Linux 容器【转】

    转自:http://www.oschina.net/translate/docker-lightweight-linux-containers-consistent-development-and-d ...

  9. hdoj - 5202 Rikka with string (BestCoder Round #37 ($))

    http://acm.hdu.edu.cn/showproblem.php?pid=5202 字符串处理的题,要细心. 给定一个只包含小写字母和问号的字符串,让我们还原出本来的字符串,把问号替换成任意 ...

  10. javascript callback函数的理解与使用

    最近做的一个项目中用到了callback函数,于是就研究了下总结下我对javascript callback的理解 首先从callback的字面翻译“回调” 可以理解这是一个函数被调用的机制 当我们遇 ...