Oracle插入数据时获取自增ID
来源:互联网 发布:java中级项目源码下载 编辑:程序博客网 时间:2024/05/17 03:57
自增字段:
表atable(id,a) id需要自增 首先建立一个序列:
create sequence seq_atable minvalue 1 maxvalue 999999999999999999 start with 1 increment by 1 nocache
有二种方式使用自增字段:
使用序列+触发器实现自增,插入语句不需要管自增字段
如:create or replace trigger trg_atable before insert on atable for each row begin select seq_atable.nextval into :new.id from dual; end;
插入数据:insert into atable(a) values('test');
注:我创建了sequence 和trigger :,之后在procedure中插入数据,插入的时候没有管ID字段,在应用中,使用了hibernate,虽然hibernate在增加记录的时候也会处理ID,但是添加记录之后,查询记录发现,ID还是根据序列和触发器的规则设置的
仅使用序列,需要在插入数据时,自增字段插入序列下一个值
如:insert into atable(id,a) values(seq_atable.nextval,'test');
三、返回刚插入记录的自增字段值
如上面的例子,我们插入一条记录后,我想马上返回刚插入的记录的ID号,我该怎么处理呢?
首先要解决自增字段的问题,上面的二种方法哪种更适合这种用法呢? 建议使用第二种自增序列,否则处理起这个问题来比较麻烦。
使用自增字段的第二种方法,在插入一条记录后马上执行一下下面的语句即返回当前插入数据的ID。
$query="select seq_atable.currval from dual";
seq_atable.currval 的值只有在同一次会话中,发生seq_atable.nextval后有效:) 所以不会存在取错值的问题。
- oracle插入数据时获取自增ID
- Oracle插入数据时获取自增ID
- 获取oracle刚插入数据的自增id值
- Oracle插入数据时获取自增ID (记录,未验证)
- mybatis 在oracle数据库中插入数据时获取自增ID
- oracle插入数据时,返回自增的id
- Oracle插入数据并获取自增长序列ID方法
- JAVA MYSQL 插入数据后获取自增ID
- mybatis 获取插入数据的自增id值
- tp5获取插入的数据的自增id
- 向Oracle插入数据实现Id自增
- ThinkPHP 3.2.3+ORACLE插入数据BUG修复及支持获取自增Id的上次记录
- 使用Mybatis进行插入时获取刚刚插入数据的ID(ID是自增字段)
- mysql插入数据,获取最新插入的ID(自增列)
- mysql插入数据,获取最新插入的ID(自增列)
- Postgresql插入数据返回自增id
- myBatis+mysql获取插入数据的自增长id
- SQLite 获取最新插入数据的自增长主键ID
- 实现IDictionary接口
- 5.3留2
- c#委托知识总结
- 5.3留4
- C++到底还能做什么?
- Oracle插入数据时获取自增ID
- PHP基础学习笔记之基本语法
- 如何让outlook在同步邮件后不删除邮箱里的文件
- nios2
- 浮躁
- 字符串自动连接
- TL431
- Debugging in Python
- 一些常见的笔试题(二)