Oracle 数据主键id自增长

来源:互联网 发布:淘宝卖家无需物流发货 编辑:程序博客网 时间:2024/06/06 07:44
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;  --不缓存cache 10; --缓存10条--创建触发器,如果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;
//其他方法
法一:
1
2
3
4
5
6
create table tb_student
(
   id                 integer generated by default as identity
                      not null constraint PK_tb_student primary key,
   createtime         DATE                 not NULL
);

法二:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
--创建序列
create sequence seq_tb_student
minvalue 1
nomaxvalue
start with 1
increment by 1
nocycle   --一直累加,不循环
nocache; 
 
create table tb_student
(
   id                  integer default seq_tb_student.nextval
                       not null constraint PK_tb_student primary key,
   createtime         DATE                 not NULL
);
0 0
原创粉丝点击