ArcMap打开ArcSDE空间数据属性表时直接崩溃😔
- 😉正常用ArcMap连接到ArcSDE,将图层拖到地图中,图形可以正常被渲染
-
😱右键图层树打开属性表,惊喜出现
-
😱ArcCatalog中表现一样,图形渲染没问题,一切换到属性表浏览直接崩溃
-
😱二次开发程序中表现为:打开要素类IFeatureClass,系统直接消失没了…
-
😲用PL/SQL查看属性表,查询正常…
-
😨ArcSDE底层不懂,只能复制粘贴修复图层,结果导出备份图层也直接崩了,各种姿势复制粘贴导出都试了,无果
-
😏那就从数据库层面去备份,直接用sql语句创建一个备份表
create table tablename_bak as select * from tablename;
-
😊在ArcMap中查看备份表tablename_bak,图形属性都正常了
-
😊然后删除原表,重命名新表,删除可能遇到被锁,查出锁信息直接删,就是这么暴力
SQL> select * from sde.state_locks;
SQL> select * from sde.object_locks;
SQL> select * from sde.layer_locks;
SQL> select * from sde.table_locks; -
🤔且慢,因为新表是新建的,表注册到ArcSDE中信息是新的了,如果发过地图服务导致服务查询功能不可用。重启服务即可。ps:这个表的触发器索引啥的都丢了
-
😚至此饶了一大圈才修复了这张表,都是重启的思路,不咋说重启大法好呢