ArcMap表关联Join中数据条数超过65536条快速解决办法
Arcmap图层需要对属性表做Join操作时,默认只保留65536条记录,多出的会被舍弃掉,可利用arcpy解决该问题,同时arcpy在进行字段计算时简直是快到飞起!
以关连xls文件为例,分为两步:
- 切分xls文件
- 编写python
按照自身要求,将xls文件切分为多个sheet,每个sheet中的记录条数小于65536条,我这里有6个sheet,每个sheet为50000条记录

然后保存(注意,需要保存成.xls)
打开Arcmap->地理处理(Geoprocessing)->Python,进入python对话窗口,关键代码如下:
xlsPath = "C:/Users/Jason/Desktop/result.xls" #xls文件完整路径
x1 = xlrd.open_workbook(xlsPath) #读取xls文件
sheet1 = x1.sheet_by_name("Sheet1") #读取sheet
cursor = arcpy.UpdateCursor("final_point","FID < 50000") #创建更新游标FID < 50000为查询条件,以提高写入效率,也可留空
for i in range(50000):
row = cursor.next()
row.setValue("Pre190227",sheet1.cell_value(i+1,1)) #为目标字段赋值
cursor.updateRow(row) #更新记录

当使用ArcMap进行表关联Join操作时,遇到超过65536条记录被截断的问题。可以利用arcpy模块来解决,arcpy在字段计算上表现出高效性能。步骤包括切分XLS文件,确保每个sheet的记录数小于65536条,然后用Python脚本进行字段赋值,代码中根据FID字段进行匹配赋值。
最低0.47元/天 解锁文章
9567

被折叠的 条评论
为什么被折叠?



