Nov*_*Net 7 sql t-sql syntax identity
可能重复:
获取插入行标识的最佳方法是什么?
什么时候适当,有人应该如何IDENTITY在T-SQL中使用不同的关键词?
看一下SQL SERVER - @@ IDENTITY vs SCOPE_IDENTITY()vs IDENT_CURRENT - 检索上次插入的记录标识
来自文章
SELECT @@ IDENTITY
它返回在连接上生成的最后一个IDENTITY值,无论生成该值的表如何,也不管生成该值的语句的范围如何.@@ IDENTITY将返回在当前会话中输入到表中的最后一个标识值.虽然@@ IDENTITY仅限于当前会话,但不限于当前范围.如果您在表上触发了导致在另一个表中创建标识的触发器,您将获得最后创建的标识,即使它是创建它的触发器.
SELECT SCOPE_IDENTITY()
它返回在连接上生成的最后一个IDENTITY值以及同一范围内的语句,而不管生成该值的表.与@@ IDENTITY一样,SCOPE_IDENTITY()将返回在当前会话中创建的最后一个标识值,但它也会将其限制为当前范围.换句话说,它将返回您显式创建的最后一个标识值,而不是由触发器或用户定义的函数创建的任何标识.
SELECT IDENT_CURRENT('tablename')
它返回表中生成的最后一个IDENTITY值,无论创建该值的连接如何,也不管生成该值的语句的范围如何.IDENT_CURRENT不受范围和会话的限制; 它仅限于指定的表格.IDENT_CURRENT返回在任何会话和任何范围内为特定表生成的标识值.
| 归档时间: |
|
| 查看次数: |
701 次 |
| 最近记录: |