ObjectID,FID和OID欄位的區別

來源:互聯網
上載者:User

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://www.sharpgis.com/forum-viewthread-tid-4605-page-1.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.