SQLServer中的uniqueidentifier类型

在学习CS系统的时候,发现一个有趣的问题:CS系统中数据库设计与我们常用的方法有所不同,其中一条就是用uniqueidentifier类型的字段作为数据的全局唯一标识符。仔细查了一下SQL Server联机丛书,发现了如下说明:
uniqueidentifier
全局唯一标识符 (GUID)。

注释
uniqueidentifier 数据类型的列或局部变量可用两种方法初始化为一个值: 

使用 
NEWID 函数。


将字符串常量转换为如下形式(xxxxxxxx
-xxxx-xxxx-xxxx-xxxxxxxxxxxx,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字)。例如,6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 uniqueidentifier 值。 
比较运算符可与 
uniqueidentifier 值一起使用。然而,排列并非通过比较两个值的位模式来实现。允许对 uniqueidentifier 值执行的操作只有比较 (=<><><=>=) 和检查 NULLIS NULL 和 IS NOT NULL)。不允许使用其它算术运算符。所有的列约束及属性(IDENTITY 除外)均允许用于 uniqueidentifier 数据类型。 
这才明白CS系统里的那些xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx样式的数据原来是这么回事,而且个人认为这种类型在数据安全方面应该表现的不错。
posted @ 2005-07-26 15:33  qihangnet  阅读(4856)  评论(3编辑  收藏  举报