Oracle 创建主键自增表示例代码

时间:2021-05-24

前言

本篇文章给大家主要介绍的是在oracle中如果创建自增长表的方法,这里要用到序列。下面话不多说,我们来看示例代码。

示例代码

create table tb_student( id NUMBER(10) not null, createtime DATE not null, constraint PK_tb_student primary key (id));comment on table "tb_student" is'学生表';comment on column "tb_student"."id" is'主键id';comment on column "tb_student"."createtime" is'创建时间';--创建序列create sequence seq_tb_studentminvalue 1nomaxvaluestart with 1increment by 1nocycle --一直累加,不循环nocache; --创建触发器,如果insert语句不指定ID自动插入增长值CREATE OR REPLACE TRIGGER tr_tb_student BEFORE INSERT ON tb_student FOR EACH ROW WHEN (new.id is null)beginselect seq_tb_student.nextval into:new.id from dual;end;

注意:触发器是非必须的,可以从业务上严格要求指定插入值。

注意oracle限制对象名的字符长度不能超过30个字符,所以表名要控制在一定的长度否则后面创建序列可能会超过限制,建议表名控制在27个字符以下。

总结

以上就是Oracle创建主键自增表的全部内容,希望本文的内容对大家的学习或者使用Oracle带来一定的帮助,如果有疑问大家可以留言交流,小编会尽快给大家回复的。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章