ADO, VB中如何取得刚插入记录的自动填充的值?

liuyann 2005-06-14 03:10:14
Oracle 中用了序列号和trigger,当插入记录时会自动设置一个序列号,
现在是当我用ADO addnew并update后如何取得这个序列号?
...全文
74 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
leonfine 2005-06-15
  • 打赏
  • 举报
回复
ADODB.Connection.BeginTrans
ADODB.Command.addnew
.....
.... 'select seq_name.currval from dual'
ADODB.Command.update
ADODB.Connection.CommitTrans
rolandzhang 2005-06-14
  • 打赏
  • 举报
回复
sequence唯一的缺点是有跳号问题,干脆写个程序,每次检索Max(ID),然后加1作为下一个号码。
对于并发用户,可以先所的锁定表,比如update、insert后,再解锁,然后允许其他用户操作
bzszp 2005-06-14
  • 打赏
  • 举报
回复
这样的话,就需要你在触发器里面进行记录了
保存在临时表里面或者其他的地方。
liuyann 2005-06-14
  • 打赏
  • 举报
回复
可是万一此时有并发操作,即别的用户也进行了插入,这样就不行了
bzszp 2005-06-14
  • 打赏
  • 举报
回复
取得序列的当前值:
select seq_name.currval from dual;

17,078

社区成员

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

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