如何获取最后插入的行的主键?
P.S注意,主键的类型为VARCHAR
,因此SCOPE_IDENTITY()
对我不起作用..
我发现了这个问题:How can I get the last inserted primary key?但我无法理解他在说什么
插入T 输出inserted.pk 值('新项');
任何人都可以指导我这个,因为我是SQL Server的新手并且无法理解这一点吗?
感谢。
答案 0 :(得分:0)
您必须声明一个表变量,例如:
declare @newIds table(id nvarchar(255));
然后插入插入项目的表格输出,如下所示:
insert into DestinationTable(col1,col2)
output inserted.Key into newIds
select
col1,col2
from
SourceTable
[Key]应该是您的PrimaryKey列的名称。
此后所有新密钥都将出现在@newIds表中。