自动创建身份 (1,1) 但使用 GUID 而不是整数
Automatical creation of indentity(1,1) but with GUIDs instead of integers
一个巧妙的事情是将 identity(2,3) 放在列上以获得计数器和索引的唯一值。我想知道是否以及在这种情况下如何使用 guid 执行相同的操作。
因此,我不会使用 newid() 插入一行,而是会为我创建一个。
如果没有办法做到这一点,我想知道它背后的技术原理。有的话当然有。
create table Records (
Id int identity(3,14) primary key,
Occasion datetime not null,
Amount float not null,
Mileage int not null,
Information varchar(999) default ' '
)
正如 懒惰 高效的@MartinSmith 评论的那样(但没有费心制定完整的回复,迫使我为他做,呵呵),我们可以使用default 关键字实现请求的行为,如下所示。
create table Records (
Id uniqueidentifier primary key default newid(),
Occasion datetime not null,
Amount float not null,
Mileage int not null,
Information varchar(999) default ' '
)
如果这位懒惰的马丁愿意,他可能会复制这个答案的内容,post作为他自己的回复,因为这确实是他的建议,而我只是一个打字机他。鉴于他有不朽之神的名声,我怀疑他会,但仍然 - 我想把这一点说清楚。
一个巧妙的事情是将 identity(2,3) 放在列上以获得计数器和索引的唯一值。我想知道是否以及在这种情况下如何使用 guid 执行相同的操作。
因此,我不会使用 newid() 插入一行,而是会为我创建一个。
如果没有办法做到这一点,我想知道它背后的技术原理。有的话当然有。
create table Records (
Id int identity(3,14) primary key,
Occasion datetime not null,
Amount float not null,
Mileage int not null,
Information varchar(999) default ' '
)
正如 懒惰 高效的@MartinSmith 评论的那样(但没有费心制定完整的回复,迫使我为他做,呵呵),我们可以使用default 关键字实现请求的行为,如下所示。
create table Records (
Id uniqueidentifier primary key default newid(),
Occasion datetime not null,
Amount float not null,
Mileage int not null,
Information varchar(999) default ' '
)
如果这位懒惰的马丁愿意,他可能会复制这个答案的内容,post作为他自己的回复,因为这确实是他的建议,而我只是一个打字机他。鉴于他有不朽之神的名声,我怀疑他会,但仍然 - 我想把这一点说清楚。