SQL Server中uniqueidentifier的用途是什么?

时间:2014-01-06 21:14:10

标签: sql-server

我有一张这样的表:

   Table1 (Table_ID Int Primary Key, Name Varchar(50), ROWID Uniqueidentifier) 

并使用ROWID函数设置NEWID()列的默认值。

我知道NEWID()函数会为每一行生成一个唯一的标识符。

我想知道为什么每行需要一个唯一的标识符?如果我们想要每一行的唯一性,我可以使用我的主键实现。我是SQL的新手。请指教。

谢谢。

2 个答案:

答案 0 :(得分:0)

uniqueidentifier是一个CPU特定的ID,它是GLOBALLY UNIQUE,它非常有用,特别是如果你必须移动你的数据,因为row_identity(整数)将重新开始新的DB SERVER ..

答案 1 :(得分:0)

如果您与其他系统连接,它会很有用。但是,如果您在隔离系统中工作,则绝对可以将PK用作表的“唯一”行ID。