其实这三者的转换存储管理很久以前就在摸索。我们通常所看到的存储在oracle数据库中的空间数据都是使用arcgis自身进行导入,而通过第三方软件则必须注册到sde才能在arccatalog中正常浏览
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
使用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 没有其他用户自定义类型的列。
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