zoukankan      html  css  js  c++  java
  • ObjectID,FID和OID字段有什么区别

    ArcGIS Desktop 需要独立的表和属性表都有一个ObjectID字段,这个字段中包含一个唯一的,长整型的数值来指定每一条记录。这个ID是由ESRI的软件来管理的,是不能够手动更改的。

    在Shapefiles, geodatabase feature classes, 和独立的表格中ObjectID的处理方式不同。
    ---在一个shapefile中, 'FID'字段包含ObjectID,并且值从零开始。
    ---在一个geodatabase feature class 或者geodatabase中的独立的表格中, 'OBJECTID' 字段包含ObjectID, 值从1开始。
    ---在一个独立的dBase 表格中, 'OID' 字段包含ObjectID, 值从零开始。

    在使用ArcGIS Desktop编辑数据的时候,不同的ObjectID字段的功能不一样:
    ---如果一个shapefile中的一条记录被删除了, FID会重新编号,这样这个值会从0开始按顺序逐渐增大。编号之间没有间隔。
    ---如果一个 geodatabase feature class 或者一个 geodatabase table中的一条记录被删除了, OBJECTID不会重新编号, 并且列表中的间隔会保存。
    ---如果一个dBase表格中的一条记录被删除了,OID会从0开始重新编号。编号之间没有间隔。

    数据转换导致ObjectID被重写。
    ---当一个geodatabase feature class被导出或者转换成shapefile的格式,或者当一个geodatabase 表格被导出成dBase格式, 输出shapefile或者表格中的记录将被从0开始按顺序重新编号。
    ---当一个geodatabase feature class被导出或者转换到一个新的 geodatabase feature class, 或者当一个geodatabase table 被导出或者转换到一个新geodatabase table, 输出的feature class 或者table中的记录将被从1开始按顺序重新编号。

    在选择字段用来Join或者Relate表格的时候,需要注意这些特点。如果一个 shapefile要使用FID 和 OBJECTID 来Join到一个feature class, 由于feature class 没有一条记录是OBJECTID = 0,所以shapefile的FID = 0的记录将不会与feature class 中的任何一条记录相匹配。

    http://support.esrichina.com.cn/2009/1229/595.html

  • 相关阅读:
    Linux下常用命令以及应用场景
    Java通过代理访问网络的几种方法
    Linux下模拟Http发送的Get和Post请求
    Postgresql常用函数整理
    java-日期Calendar类
    利用数组保存 6 个 Circle 对象,创建 Circle 对象时可传递半径,半 径值由 Math 类的 Random()方法产生( 10 以内,保持一位小数),分别求其面积 (四舍五入,保持两位小数)
    第十讲 Java 资源结构-api
    浅谈面向对象与女娲造人 (摘自 Nerxious)
    java-打印字母表
    java反射机制
  • 原文地址:https://www.cnblogs.com/qiernonstop/p/3076291.html
Copyright © 2011-2022 走看看