当前位置:首页 > 芯闻号 > 充电吧
[导读]oracle 数据库没有像 MYSQL一样有 自动ID增值 的功能,如要实现可以用触发器。首先就是建立一个序列,序列有有自动增值的功能,再建立一个触发器。如:建立一个序列CREATE SEQUENCE

oracle 数据库没有像 MYSQL一样有 自动ID增值 的功能,如要实现可以用触发器。

首先就是建立一个序列,序列有有自动增值的功能,再建立一个触发器。

如:

建立一个序列

CREATE SEQUENCE auto_seq
minvalue 1 -- 最小值
increment by 1 -- 每次增加值数
nocache -- 不启用缓存
nocycle -- 不循环;


建立一个触发器

CREATE OR REPLACE trigger auto_id_tri
before insert on pjsh_person -- before 表示插入新数据时执行
for each row -- 每次插入数据到pjsh_person表时执行下面的oracle 语句
begin
select auto_seq.nextval into :NEW.ID from dual;
end;


auto_id_tri 触发器名

auto_seq.nextval 提取auto_seq 序列的值

:NEW.ID  ID为要添加的主键列名

pjsh_person 要添加自动ID值的表名。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭