irpas技术客

Oracle主键自增_鹿神~_oracle 自增

大大的周 8056

–1.使用序列实现自增 CREATE TABLE goods( id number(10) NOT NULL PRIMARY KEY, name varchar2(10) NULL, weight number(10) NULL, color varchar2(10) NULL, TYPE varchar2(10) NULL );

–创建序列 create sequence SEQ_Userinf minvalue 1 --最小值 nomaxvalue --不设置最大值 start with 1 --从1开始计数 increment by 1 --每次加1个 nocycle --一直累加,不循环 nocache;

insert into goods values(SEQ_Userinf.nextval,‘苹果’,20,‘red’,‘圆’); SELECT * FROM GOODS;

–2.触发器方式 CREATE TABLE person( id number(10) NOT NULL PRIMARY KEY, name varchar2(10) NULL, weight number(10) NULL, sex varchar2(2) NULL );

create sequence person_seq --创建校园卡ID序列 start with 1 --序列从1开始 increment by 1 --每次增加1 minvalue 1 --最小值为1 nomaxvalue --不设最大值 nocache --没有缓存 nocycle --一直累加不循环

create or replace trigger person_trigger --创建校园卡ID触发器 before insert on person --在插入表之前 for each row --对于每一列 begin --要做的操作 select person_seq.nextval into :new.id from dual; --将下一个ID序列插入作为新的序号 end;

insert into person(name,weight,sex) values(‘tomcat’,20,‘男’); SELECT * FROM person;


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #oracle #自增 #1使用序列实现自增CREATE #TABLE #goodsid #number10 #not #null