通过SQL语法为每条记录添加新的GUID?

时间:2014-08-06 15:15:31

标签: sql

我正在使用几个以前没有uniqueidentifier列的数据库中的多个现有表。我已经添加了这个专栏,但是我想知道是否有一个SQL方法可以用来为每个列分配他们自己的GUID。我使用VB.Net,我知道我可以在那里做,但考虑到可能需要大量时间循环的表的大小和数量。

我有这个,它会为每一行分配相同的GUID,但我想知道是否有一种干净的方法来重置SQL语法中的每条记录GUID?

    DECLARE @NewGUID uniqueidentifier
    SET @NewGUID = NEWID()
    UPDATE tblSample
    SET [GUID] = @NewGUID
    WHERE GUID IS NULL

任何意见都会受到赞赏。

1 个答案:

答案 0 :(得分:4)

直接将NEWID()分配给列,而不是将一个值存储在变量中:

UPDATE tblSample SET [GUID] = NEWID() WHERE GUID IS NULL