uniqueidentifier 根据 NEWID 产生的值是唯一的,可以作为主键,IDENTITY 表示标识,也是自增的,可以作为主键,那么用哪个好呢。
一、uniqueidentifier 不适用于 Access 数据库。
二、uniqueidentifier 长度为 16,如此长的值很难让人记住;IDENTITY 一般用 int 类型即长度为 4,且为数字较好记。
三、uniqueidentifier 不能像 IDENTITY 一样判断记录插入的先后顺序。
四、uniqueidentifier 索引占用的空间更大,所以其效率比 int 索引的效率低一些。
五、uniqueidentifier 主要用于在拥有多个节点、多台计算机的网络中,分配必须具有唯一性的标识符,因为世界上的任何两台计算机都不会生成重复的 GUID 值。
所以有人建议用 uniqueidentifier 代替 IDENTITY 是缺乏根据的,是片面的。
相关阅读