关于Fme、arcsde、oracle三者存储解析

其实这三者的转换存储管理很久以前就在摸索。我们通常所看到的存储在oracle数据库中的空间数据都是使用arcgis自身进行导入,而通过第三方软件则必须注册到sde才能在arccatalog中正常浏览

使用arccatalog向数据库添加空间数据图层则不需要对该图层进行注册

下列两种情况需要注册才能看到空间视图

1 : 直接使用 SQL 语句创建要素类

2 :使用 fme 创建要素类

SQL 语句创建要素类及注册方法如下:

使用 SQL 语句创建包含 ST_Geometry 列的表,注意:要使 SDE 能够认识你创建的要素类,新建的表中有且只能有一个 ST_Geometry 列,并且最好包含唯一标识的列。
执行下面的 sql 语句
CREATE TABLE sensitive_areas (area_id integer, name varchar(128),
area_size float, type varchar(10), zone sde.st_geometry);
注意 st_geometry 前面应添加 sde schema 名,否则会报错。
使用 sdelayer 命令,将创建好的表注册到 SDE
注册的时候一定要保证下面几点才能成功:
1
必须是表的所有者才能注册。
2
表中只能有一个 ST_Geometry 列。
3
没有其他用户自定义类型的列。

4 必须是简单的集合类型 (points, lines, or polygons)
5Geometry
必须是有效的,否则读取的时候会产生不可预期的错误。
sdelayer
命令参数如下:
sdelayer -o register -l -e [Spatial_Index]
[{-R | [Spatial_Ref_Opts]}] [-P {BASIC | HIGH}]
{[-C NONE] | [-C [,{SDE|USER}[,]]]}
[-E {empty | xmin,ymin,xmax,ymax}] [-t ]
[-S ] [-q]
[-k ] [-i ] [-s <SERVER_NAME]
[-u ] [-p ] [-D ]

在命令行中执行下列命令
sdelayer -o register -l sensitive_areas,zone -e a -C area_id,SDE -u data -p s
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值