【access源码通用函数】一个生成同步复制ID的函数(即GUID,全球同步唯一标识符)-红尘如烟
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


【access源码通用函数】一个生成同步复制ID的函数(即GUID,全球同步唯一标识符)

发表时间:2010/12/13 评论(0) 浏览(53024)  评论 | 加入收藏 | 复制
   
摘 要:同步复制ID,即GUID(全球同步唯一标识符),通过特定的算法,生成的一个128位的字符串,在纳秒级的时间内,任意两台电脑生成的GUID都不会相同(理论上在公元3400年以前如此),从而确保标识的唯一性。
正 文:
同步复制ID,即GUID(全球同步唯一标识符),通过特定的算法,生成的一个128位的字符串,在纳秒级的时间内,任意两台电脑生成的GUID都不会相同(理论上在公元3400年以前如此),从而确保标识的唯一性。

Private Type GUID
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(7) As Byte
End Type
  
Private Declare Function CoCreateGuid Lib "ole32.dll" (pguid As GUID) As Long

'生成GUID(同步复制ID) ===红尘如烟=======
Public Function GetGUID() As String
    Dim typGUID As GUID
    If (CoCreateGuid(typGUID) = 0) Then
        GetGUID = GetGUID & String(8 - Len(Hex$(typGUID.Data1)), "0") & Hex$(typGUID.Data1) & "-"
        GetGUID = GetGUID & String(4 - Len(Hex$(typGUID.Data2)), "0") & Hex$(typGUID.Data2) & "-"
        GetGUID = GetGUID & String(4 - Len(Hex$(typGUID.Data3)), "0") & Hex$(typGUID.Data3) & "-"
        GetGUID = GetGUID & IIf((typGUID.Data4(0) < &H10), "0", "") & Hex$(typGUID.Data4(0))
        GetGUID = GetGUID & IIf((typGUID.Data4(1) < &H10), "0", "") & Hex$(typGUID.Data4(1)) & "-"
        GetGUID = GetGUID & IIf((typGUID.Data4(2) < &H10), "0", "") & Hex$(typGUID.Data4(2))
        GetGUID = GetGUID & IIf((typGUID.Data4(3) < &H10), "0", "") & Hex$(typGUID.Data4(3))
        GetGUID = GetGUID & IIf((typGUID.Data4(4) < &H10), "0", "") & Hex$(typGUID.Data4(4))
        GetGUID = GetGUID & IIf((typGUID.Data4(5) < &H10), "0", "") & Hex$(typGUID.Data4(5))
        GetGUID = GetGUID & IIf((typGUID.Data4(6) < &H10), "0", "") & Hex$(typGUID.Data4(6))
        GetGUID = GetGUID & IIf((typGUID.Data4(7) < &H10), "0", "") & Hex$(typGUID.Data4(7))
    End If
End Function

 点击下载此附件


Access软件网交流QQ群(群号:198465573)
 
 相关文章
如何在ADP中获取GUID字符串   【朱亦文  2004/11/10】
如何在 mdb 中获取 GUID 字符串   【朱亦文  2004/11/10】
在 mdb 中获取 GUID 字符串的函数  【朱亦文  2007/11/12】
一句VBA 生成GUID  【dbaseIIIer  2012/12/28】
【Access源码】ID重复统计  【漏蛧尐魚℡  2013/5/30】
常见问答
技术分类
相关资源
文章搜索
关于作者

红尘如烟

文章分类

文章存档

友情链接