我正在通过类似于此查询的查询插入记录:
insert into tbl_xyz select field1 from tbl_abc
现在,我想检索插入记录的新生成的IDENTITY值。如何以最小的锁定量和最大的可靠性做到这一点?
您可以使用OUTPUT子句获得此信息。
您可以将信息输出到临时目标表或视图。
这是一个例子:
DECLARE @InsertedIDs TABLE (ID bigint) INSERT into DestTable (col1, col2, col3, col4) OUTPUT INSERTED.ID INTO @InsertedIDs SELECT col1, col2, col3, col4 FROM SourceTable
然后,您可以在表InsertedIDs中查询所插入的ID。