存储过程获取自增主键用到@@IDENTITY,但是对表加触发器后,会出现获取的Id与实际插入的Id不一致。通过网上查询,用SCOPE_IDENTITY()就解决了。
两者区别:
@@IDENTITY
返回当前会话所有作用域的最后一个ID
SCOPE_IDENTITY()
返回当前作用域的最后一个ID
修改前:

修改后:

SQL @@IDENTITY与SCOPE_IDENTITY()
最新推荐文章于 2022-04-01 16:58:26 发布
本文探讨了在SQL Server中使用@@IDENTITY与SCOPE_IDENTITY()的区别,特别是在存储过程中获取自增主键时的问题。@@IDENTITY返回当前会话所有作用域的最后一个ID,而SCOPE_IDENTITY()则返回当前作用域的最后一个ID,后者更适用于有触发器的场景。

108

被折叠的 条评论
为什么被折叠?



