返回插入时默认生成的唯一标识符

KLN*_*KLN 10 sql-server uniqueidentifier t-sql default-value

目标

在表中插入值后实时检索最新的guid值

问题

不知道怎么做

信息

  • 代码应该只指定地址邮政编码的新值
  • 表中可以有很多数据

桌子

CREATE TABLE [AddressBook]
(
    [testID] [uniqueidentifier] NOT NULL default newid(),
    [address] [nvarchar](50) NULL,
    [zipcode] [nvarchar](50) NULL
)
Run Code Online (Sandbox Code Playgroud)

pap*_*zzo 14

我想你正在寻找输出

DECLARE @MyTableVar table([testID] [uniqueidentifier]);
 INSERT [AddressBook] ([address], [zipcode])
        OUTPUT INSERTED.[testID] INTO @MyTableVar
 VALUES (N'address', N'zipcode');

--Display the result set of the table variable.
 SELECT [testID] FROM @MyTableVar;

GO
Run Code Online (Sandbox Code Playgroud)

uniqueidentifier 可能不是这里最有效的 id 但这是对上述问题的回答