【发布时间】:2015-12-04 07:53:39
【问题描述】:
我有一个存储过程,其中插入一条语句并返回@@Identity。
此@@ Identity 始终返回 1。当将 @@Idnetity 删除到 Identity_Scope 时,它返回正确的预期值,该值始终递增 1。所以这很好。但问题是。为什么@@ Identity 列返回 1。
我检查并删除了所有触发器并检查了所有功能,但不知道为什么我使用@@Identity 得到 1。似乎有一个表被截断,然后一个值被插入。
知道为什么@@Identity 总是返回 1。是否有服务器设置在做某事?
【问题讨论】:
-
显示您的代码。可能你用错了
@@identity -
我建议您也使用 SCOPE_IDENTITY()
-
愚蠢的问题:您要插入数据的那个表是否有
IDENTITY列?? -
SCOPE_IDENTITY 上的页面解释了不同功能之间的差异。为什么指望我们反刍它们?
-
我不是要求 scope_Identity 与 @@Identity。
标签: sql-server tsql identity