C#使用GUID

全局唯一標識符(GUID,Globally Unique Identifier)

What is GUID

  也稱作 UUID(Universally Unique IDentifier) 。

  GUID是一種由算法生成的二進制長度爲128位的數字標識符。

  GUID主要用於在擁有多個節點、多臺計算機的網絡或系統中。

Why to use GUID

  在理想情況下,任何計算機和計算機集羣都不會生成兩個相同的GUID。GUID 的總數達到了2^128(3.4×10^38)個,所以隨機生成兩個相同GUID的可能性非常小,但並不爲0。GUID一詞有時也專指微軟對UUID標準的實現。

  (1). GUID(全局統一標識符)是指在一臺機器上生成的數字,它保證對在同一時空中的所有機器都是唯一的。

  通常平臺會提供生成GUID的API。生成算法很有意思,用到了以太網卡地址、納秒級時間、芯片ID碼和許多可能的數字。GUID的唯一缺陷在於生成的結果串會比較大。

  (2). GUID永遠是方便的

  對於程序開發的各個方面,.NET Framework簡化了建立和處理GUID數值的過程。在.NET程序需要的地方,這一功能很容易地生成唯一的數值。

 

缺點 優點
           GUID

1. GUID過長,看表現形式,至少都有32位,長的38位,浪費存儲空間

 2. GUID是根據硬件設備相關ID以及時間戳生成的

 3. GUID不利於檢索、外鍵關聯

 1. 一般來說不擔心有衝突的影響,而且,根據GUID的生成規則,還能大致知道生成的計算機硬件設備、時間等信息(但這個有多少意義呢)

2. 能在業務層就知道目標ID,而不是數據提交給數據庫系統後才確定

           自增長  1. 多數據庫同步、讀寫分離十分不方便。  1. 使用簡單

How to use GUID

    C# 中使用GUID

Guid.NewGuid().ToString()    : 1f13a943-4c7e-4bfc-aac5-935886591424
Guid.NewGuid().ToString("N"): 3a81013f9ee549b38f11ee3d50f5bd78
Guid.NewGuid().ToString("D"): c4219375-c2c8-4639-86e8-8d910ed12186  -- 默認爲:D
Guid.NewGuid().ToString("B"): {a793927d-9a1b-4d25-9562-0a59522db9c0}
Guid.NewGuid().ToString("P"): (a99839b9-da94-40fd-87a5-4a5e73677b1f)
Guid.NewGuid().ToString("X"): {0xb294a44e,0x43d9,0x4b60,{0xb5,0xb9,0x32,0x29,0xae,0x46,0x45,0x17}}

 

原文鏈接:https://www.cnblogs.com/ZaraNet/p/9647751.html

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章