向oralce表中添加数据时如何让主键自增
近来项目中需要向某个表插入数据,但是id只做主键并不显示在页面中,故想要把主键设成在插入其他数据时自动增长。PL/SQL中没有找到像MySql中一样的自增按钮选项,从网上搜了搜大家都是用自增序列和触发器来实现这个要求的,下面来整理一下。
1.表中id是主键,非空但是从页面添加数据时并不会让用户输入。表明atm_register
2.创建一个序列,比如,SEQ_ATM_SFXH
create sequence SEQ_ATM_SFXH
minvalue 0
maxvalue 99999999
start with 0
increment by 1
cycle;
每次查询的时候返回
3.创建一个触发器
create or replace trigger SAVEATMREGISTER
before insert on atm_register --在向atm_register插入数据时触发
for each row
begin
select SEQ_ATM_ID.nextval into:new.id from dual; --调用序列
end SAVEATMREGISTER;
这样在向表中插入数据时id就会自动增长啦~
欢迎各位程序猿&程序媛批评指正~