已有56人关注
书上有句sql语句看不懂请教下老师,关于sql语句除了insert into相关语句,后面还跟了句select @@Identity from tb_User语句
发表在C#图书答疑 2017-12-26 悬赏:2 学分 《C#项目开发实战入门》第1章 Q友——做你自己的QQ
是否精华
版块置顶:
据网上查的结果是select @@Identity from tb_User语句是查询自动增加最后一个的id值,那就是说一条sql语句是有插入指令语句又有查询指令语句,怎么是要执行ExecuteNonQuery指令?这指令返回的是插入语句受影响行数还是查询结果?还有@@Identity跟SCOPE_IDEDENTITY()是一样意思可以互相替换的吧?
分享到:
精彩评论 3
小禾斗
学分:7308 LV13
TA的每日心情
奋斗
2017-04-21 14:00:25
2017-12-26
沙发

读者朋友:

  您好,返回的是查询结果。@@IDENTITY、SCOPE_IDENTITY 和 IDENT_CURRENT 是相似的函数,因为他们都返回插入到表的 IDENTITY 列的最后一个值。

     @@IDENTITY 和 SCOPE_IDENTITY 可以返回当前会话中的所有表中生成的最后一个标识值。但是,SCOPE_IDENTITY 只在当前作用域内返回值,而 @@IDENTITY 不限于特定的作用域。

     IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 可以返回任何会话和任何作用域中为特定表生成的标识值。


Wlison
学分:30 LV2
2017-12-26
板凳

小禾斗 发表于2017-12-26 13:35

读者朋友:

  您好,返回的是查询结果。@@IDENTITY、SCOPE_IDENTITY 和 IDENT_CURRENT 是相似的函数,因为他们都返回插入到表的 IDENTITY 列的最后一个值。

     @@IDENTITY 和 SCOPE_IDENTITY 可以返回当前会话中的所有表中生成的最后一个标识值。但是,SCOPE_IDENTITY 只在当前作用域内返回值,而 @@IDENTITY 不限于特定的作用域。

     IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 可以返回任何会话和任何作用域中为特定表生成的标识值。


查询结果的值是有是否有无查询结果(1或0),还是查找到的标识符的值?后面查询结果为1的时候还跟了一条查询SCOPE_IDENTITY() 感觉上面不加@@Identity语句只插入数据,那样感觉后面那个再查询最后一个标识值,就合理很多,还是说因什么原因需要对不同作用域查询标识符?
小禾斗
学分:7308 LV13
TA的每日心情
奋斗
2017-04-21 14:00:25
2017-12-26
地板

Wlison 发表于2017-12-26 14:41

查询结果的值是有是否有无查询结果(1或0),还是查找到的标识符的值?后面查询结果为1的时候还跟了一条查询SCOPE_IDENTITY() 感觉上面不加@@Identity语句只插入数据,那样感觉后面那个再查询最后一个标识值,就合理很多,还是说因什么原因需要对不同作用域查询标识符?

下面的select是单独执行的,用的是Scalar的方法,返回的是查询中的第一行第一列的值。

首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照