2011-06-16 16 views
0

Wiki說它用來做類,接口唯一標識符,怎麼樣對象(實例)?關於GUID的用法

當SQL工作中,我也看到了GUID的ID字段(表用戶,..等在asp.net MVC模板項目數據庫ASPNETDB)

所以我想清楚地瞭解GUID使用,這情況下應該使用它,是不是真的獨特,

任何解釋讚賞

感謝

回答

0

對於一個GUID是什麼,看看我們的好朋友Wikipedia: GUID一個很好的概述。

是不是真的在同一臺機器生成的唯一

GUID是幾乎可以肯定是唯一的。在同一臺機器上生成同一個文件的機率非常小。可以說,在更廣泛的世界中,你有一個產生兩個GUID的小機會,但這個機會還很小,而且這兩個GUID的機會也很小。實際上,大型強子對撞機可能會產生一個吞噬地球的黑洞,而不是在網絡上有兩個相同的GUID會議。

因此,有些人喜歡用它作爲數據庫表的主鍵。我個人不喜歡這樣做,因爲:

  • 一個自動遞增整數給我足夠的唯一性,以便能夠使用它作爲主鍵
  • GUID是一個巨大的PITA對付你時編寫SQL查詢。

維基說,用於製造類,接口唯一標識符

如果你需要一個標識符是唯一跨多個不同的區域(像在註冊表配置單元),然後GUID是一個很好的解。在這種特殊情況下,它們被用於識別類型。一個具體的實例也可以在內部使用一個GUID標識符,但這實際上只對數據對象有用。