获取SQL中的Insert操作的标识行值

时间:2012-11-18 02:10:04

标签: sql sql-server

我使用SQL的所有年份,我从未想过要问这个问题。

如果我在表中添加(插入)一行,并且它有一个标识列,我该如何检索这个新行的标识?我很想听到这个问题的解决方案,因为我担心我可能会在一个包含非常相似或重复行的数据库上运行。

2 个答案:

答案 0 :(得分:1)

使用SCOPE_IDENTITY函数获取当前作用域中最后插入的标识。

答案 1 :(得分:1)

如何检索IDENTITY列的值有三个主要功能/方法。请按照第一个链接进行简要说明。第二个(MSDN)提供了清晰的例子和比较:

如何获得身份的三种方式: @@IDENTITYSCOPE_IDENTITY()IDENT_CURRENT('TableName')

虽然@@IDENTITY很可能是“最常用的”,但由于其实现,它不必总是返回预期的身份值。阅读更多here