问题:ArcMap两表属性连接关连大数据量更新过慢
在ArcMap 中当数据量过大时,进行字段计算或者属性连接关联更新时,会出现非常耗时甚至ArcMap桌面端失去响应的情况,使用ArcMap中的SQL插件即可快速解决完成赋值解决问题。
1工具打开时即可获取ArcMap当前加载所有数据的工作空间。
2执行过的SQL语句会在上方记录,双击即可复用,右击即可导出删除
3批更新时各SQL语句间用 ; 隔开 英文分号。
--------------两表连接更新方法(MDB):---------------------------------------------------------------------------
------------------------------①--------------------------------------------------------------------------------------------
UPDATE TABLEA tA INNER JOIN TABLEB tB ON tA.FieldGL = tB.FieldGL SET tA.FieldVal = tB.FieldVal
注:TABLEA为要更新的表,TABLEB为作为更新来源的表,FieldGL 为两表作为关联更新的关联字段,tA.FieldVal 为赋值更新的字段,tB.FieldVal为计算来源字段
例:有两个表FDCQ[BDCDYH,YWH]和QLR[BDCDYH,YWH]表,需要利用两表的BDCDYH作为关联字段,将FDCQ的YWH更新至QLR对应的YWH中,更新语句应为:
UPDATE QLR Q INNER JION FDCQ F ON Q.BDCDYH = F.BDCDYH SET Q.YWH = F.YWH
在SQL语句执行框里输入这段代码点击执行即可更新
------------------------------②----------------------------------------------------------------------------------------------
如果不想手动编写SQL编码,插件提供了交互式更新的方法,点击属性链接
手动选择更新的表及字段信息,点击确认,即可自动填充更新代码,并完成更新。
速度对比:两表数据量均为为62598条数据,使用ArcMap连接更新时,在等待超过三分钟后界面一直处于未响应状态,未完成后续更新。
使用SQL语句更新,用时在4秒钟左右。
※: 要更新的两个表必须在同一数据库
----------------单字段更新--------------------------------------------------------------------------------------
单字段更新的方法(MDB):
UPDATE TABLE SET FIELD = VALUE
例:更新QLR表中的QLRLX为1 , UPDATE QLR SET QLRLX = '1'
----------------删除数据---------------------------------------------------------------------------------------
删除数据的方法(MDB):
DELETE FROM TABLE WHERE FIELD = VALUE
例:删除QLR表中XB为1的记录
DELETE FROM QLR WHERE XB = '1'
如需删除所有数据,删除WHERE 包括 WHERE 后的所有代码即可。
----------------总结---------------------------------------------------------------------------------------
1使用SQL工具更新,本质上是利用SQL语言对数据库的更新,所以使用方式不仅以上三种方式,在熟练掌握SQL语句的前提下,可进行任何更新操作,以上三种为作业中常见的三种需求
2更新及删除操作不具有撤回功能,因此使用时需做好数据备份防止错误的SQL语句破坏数据
VX:AM199606080813(免费免费免费),备注博客园
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下