理解ArcGIS中不同ID的区别及使用方式
在使用ArcGIS Desktop时,常常会遇到ObjectID、FID和OID这几个字段,对于许多用户来说,这些ID的作用和区别可能会带来困惑。在ArcGIS中,每一个独立的表和属性表都会有一个ObjectID字段,这个字段是由ESRI软件管理的,包含唯一的长整型数值来指定每一条记录。但在不同类型的数据存储中,ObjectID的处理方式有所不同。
ObjectID在不同数据存储格式中的表现
- 在shapefile中,FID字段实际上包含了ObjectID,其值从零开始依次递增。
- 在geodatabase feature class或独立表格中,OBJECTID字段包含ObjectID,但值从1开始计数。
- 而在独立的dBase表格中,OID字段包含ObjectID,同样从零开始编号。
不同ObjectID字段的功能差异
当编辑数据时,各种ObjectID字段的功能也存在差异:
- 在shapefile中,如果删除了某条记录,FID将重新编号,值会按顺序紧凑递增,没有间隔。
- 在geodatabase feature class或geodatabase table中,删除记录不会重新编号OBJECTID,保留原有间隔。
- 对于dBase表格,删除记录后,OID将从零开始重新编号,同样没有间隔。
数据转换对ObjectID的影响
- 当将geodatabase feature class导出或转换为shapefile格式,或将geodatabase表格导出为dBase格式时,输出的记录将从0开始重新编号。
- 转换为新的geodatabase feature class或table时,记录编号将从1开始按顺序重新分配。
需要注意的是,当选择字段用于Join或Relate表格时,应当考虑以上特点。如果一个shapefile要通过FID和OBJECTID与feature class连接,由于feature class没有OBJECTID为0的记录,shapefile中FID为0的记录将无法匹配任何feature class记录。
通过以上了解,可以更好地利用ArcGIS中不同ID的特性,确保数据处理和关联的准确性和高效性。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。