一直以来都是使用@@identity来获得最后一个插入到表的记录的identity值,最近发现这种方法在某种情况是不可靠的,先来看看两个概念
作用域:在SQLSERVER作用域就是一个模块-存储过程,触发器,函数或批处理
会话:  一个用户连接产生的所有上下文信息(online book找不到会话的概念,参照会话上下文概念而写)

相同点:都是返回最后插入的标识值
不同点:
@@identity :返回当前会话最后一个标识值,不限于特定的作用域 ;
ident_current('tablename'):返回任何会话,任何作用域中的指定表中生成的最后一个标识值 ;
scope_identity :返回当前会话当前作用域任何表生成的最后一个标识值 。

相关文章:

  • 2022-02-03
  • 2022-01-12
  • 2021-12-08
  • 2022-12-23
  • 2021-12-09
  • 2021-07-13
  • 2022-12-23
  • 2021-07-20
猜你喜欢
  • 2021-08-22
  • 2021-10-30
  • 2021-06-14
  • 2022-01-19
  • 2022-12-23
  • 2021-11-05
  • 2021-11-05
相关资源
相似解决方案