通过SQL删除SDE图层后,无法再新建相同图层名的问题

在SDE中删除图层后遇到无法新建相同名称图层的问题,原因是SDE的REGISTRATION_ID未被清除。解决方案是通过SDE的sdetable命令解除图层注册。建议避免直接用SQL删除图层。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

最近支持一个用户,在SDE中创建要素类(Polygon FeatureClass)的时候提示了下面这个问题:

根据提示是要素类已经存在,不能再创建相同的要素类。查看了下SDE,没有相同名称的要素类。后来据反馈,之前是通过SQL语句在Oracle中直接删除了该要素类。

解决方法

    初步判断是由于没有删除干净导致,背后的原因是SDE给每一个要素类都注册了一个唯一ID(REGISTRATION_ID ),这个ID是存储在SDE.TABLE_REGISTRY中,这个ID是由SDE自主维护

要解决这个问题,可以通过SDE的sdetable命令来解除该要素类的注册,命令如下:

sdetable -o unregister -t tablename

    但是需要注意的是要使用SDE命令,必须得先安装ArcGIS SDE软件。从10.2以后,ArcGIS SDE就不再提供ArcGIS SDE软件,推荐使用直连的方式。安装了软件,意味着你可以使用服务的方式去连接SDE空间库。所以,我们可以安装ArcGIS SDE10.2软件,然后再用sdetable命令来解除要素类的注册。

    解除了之后,就可以正常创建要素类了。

    最后,特别提醒不要随便通过SQL去删除要素类!不要随便通过SQL去删除要素类!不要随便通过SQL去删除要素类!重要的事说三次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值