如何使用 UUID 的默认值创建唯一列

zta*_*tic 9 sql-server-2005 sql-server

我有一个供内部使用的键列,它只是一个递增的整数,但我想要第二个唯一的列,它是一个 UUID,但我不知道如何调用默认值的函数(以便 SQL服务器正在创建 UUID 而不是 java),有没有可以为此向我建议的文档?

Ale*_*x_L 12

CREATE TABLE TblUID
(
    ID INT NOT NULL,
    UID UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID()
)
Run Code Online (Sandbox Code Playgroud)

  • [那个](http://msdn.microsoft.com/en-us/library/ms190348.aspx) 或 [`NEWSEQUENTIALID()`](http://msdn.microsoft.com/en-us/library/ ms189786.aspx)。 (5认同)

Tho*_*ger 6

不确定我是否正确理解您的问题,但您可以uniqueidentifier在表格中添加一个字段。如果要为记录生成 uid,可以执行以下操作:

create table UniqueIdTest
(
    someint int not null,
    someid uniqueidentifier not null
)

insert into UniqueIdTest(someint, someid)
values(1, NEWID())
Run Code Online (Sandbox Code Playgroud)

那能满足你的要求吗?