加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SCOPE_IDENTITY和@@IDENTITY

发布时间:2020-12-12 13:11:40 所属栏目:MsSql教程 来源:网络整理
导读:SCOPE_IDENTITY和@@IDENTITY SCOPE_IDENTITY ? 和 ? @@IDENTITY ? 的作用都是取得返回在当前会话中的任何表内所生成的最后一个标识值,简单的说就是在执行一条插入语句之后使用@@IDENTITY的全局变量,取得插入记录的ID号但是有个问题就是 ,@@IDENTITY是全局

SCOPE_IDENTITY和@@IDENTITY

SCOPE_IDENTITY ? 和 ? @@IDENTITY ? 的作用都是取得返回在当前会话中的任何表内所生成的最后一个标识值,简单的说就是在执行一条插入语句之后使用@@IDENTITY的全局变量,取得插入记录的ID号但是有个问题就是,@@IDENTITY是全局的,所以在他的功能会体现在所有作用域,一个操作,一个触发器,一个存储过程叫做一个作用域,这时候如果出现多个作用域的情况的时候,@@IDENTITY所取得的ID号就是最后一个作用域产生的结果。这时候我们要使用SCOPE_IDENTITY方法来作了。SCOPE_IDENTITY ? 只返回插入到当前作用域中的值;@@IDENTITY ? 不受限于特定的作用域。 ?
? 使用方法:select ? SCOPE_IDENTITY() ? as ? ID ? from ? [table]select ? @@IDENTITY ? as ? ID ? from ? [table] ?
? 实例: ?
? ? ? ? sql="SET ? NOCOUNT ? ON;insert ? into ? [Table](Item) ? values('"&Item&"')"sql=sql&";select ? @@IDENTITY ? as ? ID ? from ? [Table];SET ? NOCOUNT ? OFF;"??

在插入某些自增表的时候,需要将其打开:
?语法:SET?? IDENTITY_INSERT???TableName?? ON

?

转自: http://www.cnblogs.com/daydayupanan/archive/2008/09/04/1283648.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读