好啦,以后不用为主键重复问题再烦恼了吧。
不过,请注意该函数需要的支持文件:(以pb7.0为例)
pbappl.reg(执行它注册一遍,7.0以下必须此文件)
pbvm70.dll(不用多说了)
pbaen70.tlb(pb自动应用服务类库入口)
guid如何做到唯一?
要确保一个标识是唯一的,仅有两个方法:
1.通过一些机构组织来登记;
2.使用特别的算法来产生唯一的数字,这些数字可被认为在世界范围内是唯一的。
第一个方法很常见,比如身份证号码是国家制定的标识个人。它的问题是,制定这标识的机构组织自身存在执行偏差,而且手续繁琐,多数情况下你得花钱费时。
第二个方法更适合于开发者。如果你可以发明一个算法,每次调用它都可以产生一个可被认为是唯一的名字,那么这个问题就解决了。
事实上,开发软件基金会(open software foundation,osf)已经研究出一种能产生唯一标识符的算法,产生全球唯一标识符(universally unique identifier,uuid)。在com的命名标准上,微软使用同样的算法!在com中微软将它重命名为globally unique identifier(guid)。
生成guid的算法根据以下几个方面:1.当前日期和时间。2.网络适配器卡地址。3.时针序。4.自动递增计数器。其中,网卡地址是相互不同的,对没有网卡的机器,地址对使用中的机器保持唯一性。
guid的记录通常采用16进制。不过这没有关系,一个典型的guid类似为:"88ab240c-f761-49b8-b47f-94b0aba4115a",略去"-",即为一个128位的唯一数字。2的128次方是一个非常大的数字。128位的接口标识符使得我们可能创建大约340282366920900000000000000000000000000个独立的接口,足够为将来10782897524560000000年每秒创建一万亿个接口。
这是个什么概念呢?就拿这几个数字中最小的“一万亿”来说。假如把银河系缩小一万亿倍,也就是把银河系直径缩小到一百万公里,这时太阳就变成一粒芝麻,那么最大的行星木星就变成了一粒灰尘。
即使地球毁灭了,它仍然是全球唯一。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器