Sdelayer注册

创建空间数据存储类型为ST_Geometry的要素类有2种方法: 1)使用SDE创建要素类从9.3 开始,默认创建的要素类都使用ST_Geometry存储空间数据,9.3 版本之前,可以通过配置dbtune参数来完成。2)直接使用SQL语句创建要素类。创建空间数据存储类型为ST_Geometry的要素类有2种方法:

使用 SDE 创建要素类
9.3  开始,默认创建的要素类都使用 ST_Geometry 存储空间数据, 9.3  版本之前,可以通过配置 dbtune 参数来完成。
2
)直接使用 SQL 语句创建要素类。
1. 
首先使用 sqlplus 连接到 oracle 服务器,确保登陆用户有如下权限:
CREATE TYPE
UNLIMITED TABLESPACE
CREATE LIBRARY
CREATE OPERATOR
CREATE INDEXTYPE
CREATE PUBLIC SYNONYM
DROP PUBLIC SYNONYM
The CONNECT and RESOURCE roles include these privileges. 
2. 
使用 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  名,否则会报错。
3. 使用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 sa -t ST_GEOMETRY
-o参数为register -l参数为表名/ST_Geometry列 -e 几何类型 -C 用户唯一id/SDE 其中SDE表示由sde维护唯一id,使用USER选项,则有用户维护唯一ID -u注册地用户名 -p 用户密码 -t 数据存储类型
在catalog中查看,可以看到sensitive_areas已经被注册到sde中,并且图标显示为polygon类型。
 

以注册为arcsde图层为例
//
用服务方式注册
sdelayer -o register -l 
图层名,SMGEOMETRY -e a+ -t SDO_GEOMETRY -C SMID,USER -P HIGH -G 2382 -u user -p password -i esri_sde
//
用直接方式注册
sdelayer -o register -l 
图层名,SMGEOMETRY -e a+ -t SDO_GEOMETRY -C SMID,USER -P HIGH -G 2382 -u user -p user@sid -i sde:oracle10g

注:

I. Sdelayer命令的参数-l用来指定需要注册的表名以及表中的空间字段,而且表明和字段的名称一定要大写,如果小写的话会提示错误。
II. Sdelayer
支持注册的空间类型为ST_GEOMETRYSDO_GEOMETRY两种类型,其它的类型不支持。
III. –e
参数用来指定需要注册成什么类型,以下是常用的类型:

-e
Entity types allowed (npslaAc3+M).
n
Nil
p
Point features
s
Line (spaghetti) features
l
Simple line (line string) features
a
Area features
A
Annotation
c
CAD data
3
Three-dimensional features can be added to the entity type mask only with the `-o add' operation
+
Multipart features

例如:

a+()
p+
(点)
l+
(线)
M
Measures on coordinates. The [-m] option is required to store measure values on each coordinate. Measures can be added to the entity type mask only with the "-o add" operation.

-G空间参考是否有带号

2382(不带带号)
2361(
带带号)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值