社区
Oracle
帖子详情
如何在事务中获取新增的ID
V-Far
2012-04-01 05:31:39
开发中使用事务插入了一条数据
主键是使用序列来自增的....
我想知道,还未Commit和Rollback的情况下,怎么去获取到这个主键的ID
例如:
tb表:
id(seq自增的) number
name nvarchar2
insert into tb(name) values('name')
使用事务插入之后.就算未有提交,也应该会有一个id与之数据对应的.我现在想拿到这个id
...全文
732
5
打赏
收藏
如何在事务中获取新增的ID
开发中使用事务插入了一条数据 主键是使用序列来自增的.... 我想知道,还未Commit和Rollback的情况下,怎么去获取到这个主键的ID 例如: tb表: id(seq自增的) number name nvarchar2 insert into tb(name) values('name') 使用事务插入之后.就算未有提交,也应该会有一个id与之数据对应的.我现在想拿到这个id
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
forgetsam
2012-04-02
打赏
举报
回复
insert ... values() returning id into 变量;
ssqtjffcu
2012-04-01
打赏
举报
回复
insert into tb(name) values('name')
你的id是怎么产生的?用序列?
cowboyhn
2012-04-01
打赏
举报
回复
先执行NEXTVAL,然后就可以执行CURRVAL获取刚才插入的值:
insert into tb(id,name) values(seq.nextval,'name');
select seq.currval from dual
youqi1984
2012-04-01
打赏
举报
回复
当没有提交,表中该记录没有写到数据文件中。
select seq.next into id from dual 只能是取序列的下一个值
V-Far
2012-04-01
打赏
举报
回复
难道是select seq.currval from dual
等答案......
mysql
事务
未结束时,可
获取
新增
数据
id
,可修改
新增
数据
好奇为何mybatsi在
事务
未结束时,可以获得
新增
数据的
id
。用mysql语句试试: 目前
id
到29,下次自增到30 1.开一个
事务
新增
语句,不提交
事务
2.新建窗口执行
新增
3.第2条语句执行成功,
id
为31,因为30被第一条语句使用了 4.提交第一条语句
事务
,记录出现 5.如果第一条语句,
事务
回滚,则30
id
不会再被使用,以后
新增
语句从32开始,可以试试。 6.在
新增
事务
未提交前,可修改
事务
中
正在
新增
的数据。 如下,假设预判到
新增
语句执行后,数据
id
是29,在.
mybatis保存数据后,得到自增长的
id
值
新增
用户
id
的返回值
新增
用户后,同时还要返回当前
新增
用户的
id
值,因为
id
是由数据库的自动增长来实现的,所以就相当于我们要在
新增
后将自动增长 auto_increment 的值返回。 <insert
id
="saveUser" parameterType="USER"> <!-- 配置保存时
获取
插入的
id
--> <selectKey keyColumn="
id
" keyProperty="
id
" resultType="int"> select la
Mybatis多表
新增
Mybatis多表
新增
开发工具与关键技术:eclipse/ mybatis多表
新增
作者:苦行者 撰写时间:2021年5月28日 Mybatis的多表
新增
并不是什么非常难的技术点,只要记住以下两个关键点即可。 1、 使用
事务
管理 2、
获取
表的
新增
主键
ID
当我们
新增
了第一张表,再
新增
第二张表的时候,必需要拿到第一张表的
新增
ID
,才能够进行第二张表的
新增
,否则保存到数据库
中
的数据就会缺少与第一张表的唯一关联外键,那么如何
获取
第一张表的
新增
ID
呢? 其实非常简单,只需要在第一张表的Mapper.xml的新
关联表
新增
开发工具与关键技术: VisualStudio2019 C#作者:可乐沙司撰写时间:2022/6/8今天我分享一个很好用的一个方法,如果我们的数据表有一个或者多个数据关联表的时候,我们
新增
一个表的数据,我们同时也要
新增
另外一个表的数据的时候,我没有找到这个方法的时候是想写两个Add的操作,但是这样
新增
进去的数据,他们两个是没有关联在一起的,所以我想到了,先
新增
一个表,然后拿这个表的
ID
去
新增
另外一个表,详细操作如下:一.写两个参数接收传过来的数据: 二.先把一个表的外健的数据表
新增
,然后将这个表的
ID
回传
如何获得刚才
新增
的
Id
---hibernate--java--j2ee--[完美方法]
环境:eclipse3.2 +tomcat5.5.17 +struts2.0.6win2003server,sqlsrever2000iuprg@tom.com 经常碰到这种情况: 主表
新增
时,同时要插入明细表.
Id
必须获得刚才
新增
的
Id
.以前试验过Sql的SELECT
ID
ENT_CURRENT(物理表名) AS MY
Id
来单独写个方法(注意session)获
Oracle
17,134
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章