如何获取插入的连续唯一标识符

Omu*_*Omu 1 sql t-sql sql-server sql-server-2005

我的桌子看起来像这样:

create table foos(
id uniqueidentifier primary KEY DEFAULT (newsequentialid()),
..
)
Run Code Online (Sandbox Code Playgroud)

所以id是按顺序自动生成的,我没有设置它

插入后如何获取它的值?(以我正在做的身份insert ... select @@identity

Ale*_*Aza 5

使用输出子句插入后返回 NewSequentialID()

基本思想:

create table foos(id uniqueidentifier primary KEY DEFAULT (newsequentialid()))

declare @Ids table(id uniqueidentifier)

insert foos
output inserted.id into @Ids
default values

select *
from @Ids
Run Code Online (Sandbox Code Playgroud)