科技知識動態:sql uniqueidentifier數據類型詳解

導讀 跟大家講解下有關sql uniqueidentifier數據類型詳解,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說sql uniqueidentifier

跟大家講解下有關sql uniqueidentifier數據類型詳解,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說sql uniqueidentifier數據類型詳解,小編也收集到了有關sql uniqueidentifier數據類型詳解的相關資料,希望大家看到了會喜歡。

uniqueidentifier數據類型可存儲16字節的二進制值,其作用與全局唯一標記符(GUID)一樣。GUID是唯一的二進制數:世界上的任何兩臺計算機都不會生成重復的GUID值。

在SQL中 ROWGUIDCOL表示新列是行的全局唯一標識列。對于每個表只能指派一個uniqueidentifier 列作為ROWGUIDCO列。ROWGUIDCOL屬性只能指派給uniqueidentifier列

uniqueidentifier數據類型的賦值方法:

  1.使用NewID()函數來實現

  2.直接將字符串的常量轉化為xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

    例如:6F9619FF-8B86-D011-B42D-00C04FC964FF

  3.直接賦予32位的十六位數據

    例如:0xffffffff00000000ffffffff00000000

其它

在SQL Server 2005中有一個數據類型uniqueidentifier,這個數據類型就是用于支持GUID(Global Unique Identifier)。這個類型的值是一個長度為32的定長字符串,比如”00000002-3378-a87f-92pj-2t68i97o34ms”。GUID可以保證該ID的全局唯一性,方便整合,以免因為數據互相Copy以及轉化過程中因為ID相同引起不必要的沖突。在C#中有Guid類,方便我們生成和操作GUID。比如Guid.NewGuid.ToString()就可以得到一個新的GUID字符串。其實,GUID本質上可以認為是時間戳的MD5 Hash。在Lotus中,每個Document都有一個全局的唯一標識稱作UNID(unique identifier)。這個UNID和上述GUID有著相同的機制。筆者在最近的項目中就完成了Lotus文檔數據庫向SQL Server 關系數據庫轉化的工作。涉及了比較多的GUID和UNID的操作。在SQL Server 2005中,uniquidentifier類型值總是可以用casting轉化為定長(32)的varchar類型。

來源:php中文網

免責聲明:本文由用戶上傳,如有侵權請聯系刪除!