Oracle 创建主键自增表示例代码
前言
本篇文章给大家主要介绍的是在oracle中如果创建自增长表的方法,这里要用到序列。下面话不多说,我们来看示例代码。
示例代码
createtabletb_student ( idNUMBER(10)notnull, createtimeDATEnotnull, constraintPK_tb_studentprimarykey(id) ); commentontable"tb_student"is '学生表'; commentoncolumn"tb_student"."id"is '主键id'; commentoncolumn"tb_student"."createtime"is '创建时间'; --创建序列 createsequenceseq_tb_student minvalue1 nomaxvalue startwith1 incrementby1 nocycle--一直累加,不循环 nocache; --创建触发器,如果insert语句不指定ID自动插入增长值 CREATEORREPLACETRIGGERtr_tb_student BEFOREINSERTONtb_studentFOREACHROWWHEN(new.idisnull) begin selectseq_tb_student.nextvalinto:new.idfromdual; end;
注意:触发器是非必须的,可以从业务上严格要求指定插入值。
注意oracle限制对象名的字符长度不能超过30个字符,所以表名要控制在一定的长度否则后面创建序列可能会超过限制,建议表名控制在27个字符以下。
总结
以上就是Oracle创建主键自增表的全部内容,希望本文的内容对大家的学习或者使用Oracle带来一定的帮助,如果有疑问大家可以留言交流,小编会尽快给大家回复的。