如何在事务中获取新增的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
...全文
678 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用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
等答案......

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧