sql执行insert插入一条记录同时获取刚插入的id
有两种方式可以获得刚新插入的id
①从inserted临时表中查询
②使用全局变量@@identity 查询
1、使用 output 关键字输出inserted临时表的 id
在执行insert之后,inserted 为已插入的临时表,可以从临时表得到刚刚插入该表的 id 了。
insert into t_student(name,studentno,sex,age)
output inserted.id values('张连康','101001','男',22)
2、使用SQL的变量或全局参数
select @@IDENTITY --返回为当前会话的所有作用域中的任何表最后生成的标识值。 select IDENT_CURRENT('table_name') --返回为任何会话和任何作用域中的特定表最后生成的标识值,它不受作用域和会话的限制,而受限于所指定的表 select SCOPE_IDENTITY() --返回为当前会话和当前作用域中的任何表最后生成的标识值。
最常使用的应该是 @@identity ,但是它是全局下的新插入的id,也就是如果有多线程的话,那么获取的不一定是想要的结果。
insert into t_student(studentNo,name,sex,age) values('15040241059','zlk','man',22)
select @@IDENTITY
我们建立一个触发器来测试这种方式得到的id,触发器的效果为:当向 t_student 表中插入一条记录时,同时也向 t_class 表中插入一条记录。
create trigger trig_studentClass
on t_student for insert
as
insert into t_class (classNo,className)
values('001','计算机科学与技术')
这三个的更多的使用说明,可以查看SQL联机帮助手册,里面有详细的说明。
关注我】。(●'◡'●)
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【因为,我的写作热情也离不开您的肯定与支持,感谢您的阅读,我是【Jack_孟】!
本文来自博客园,作者:jack_Meng,转载请注明原文链接:https://www.cnblogs.com/mq0036/p/12869610.html
【免责声明】本文来自源于网络,如涉及版权或侵权问题,请及时联系我们,我们将第一时间删除或更改!
posted on 2020-05-11 15:49 jack_Meng 阅读(9181) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2018-05-11 sqlserver 2008 r2 下载地址和序列号,可用迅雷下载
2018-05-11 win10永久激活方法(真正永久激活)