首页 > 数据库 > mysql教程 > oracle如何实现插如记录时ID自增

oracle如何实现插如记录时ID自增

WBOY
发布: 2016-06-07 15:19:06
原创
1233 人浏览过

sql server中的ID是系统设定的,当我们插入数据时他会自己增加,但oracle没有,需要我们自己添加字段ID,由于ID设置成NOT NULL,插入数据库时就会失败,这样就需要插入数据库时实现这条记录ID自己自动增加,自己搜了一下,具体方法如下 假如将表li_line_fence

sql server中的ID是系统设定的,当我们插入数据时他会自己增加,但oracle没有,需要我们自己添加字段ID,由于ID设置成NOT NULL,插入数据库时就会失败,这样就需要插入数据库时实现这条记录ID自己自动增加,自己搜了一下,具体方法如下

假如将表li_line_fence的fenceid字段设置成了ID,那么就需要插入记录时自增

1.首先建立一个序列:

create  sequence seq_atable minvalue 1 maxvalue 9999999 start with 1 increment by 1 nocache
登录后复制
2.建立一个触发器:
create or replace trigger trg_atable before insert on li_line_fence for each row
begin
   select seq_atable.nextval into :new.fenceid from dual;
end;
登录后复制
这个触发器是对inset动作的触发,into后面的new.fenceid是向新记录的fenceid字段自动按照序列中定义的插入值,这样就自动的插入值了

oracle如何实现插如记录时ID自增
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板