oracle实现主键自动增
2017-03-06 15:57
375 查看
oracle主键的自动增长不像mysql能通过auto_increment来指定,也像sql_server通过identity(1,1)就能实现从1开始,以+1的方式实现主键的自动增长。
而要通过sequence和触发器共同协作来实现主键的自动增长。
例子:
创建表:
create table student (
id int not null primary key,
name varchar(30),
birth date,
score number(5,2)
);
创建sequence:
create sequence seq_student
minvalue 1
maxvalue 99999
start with 1
increment by 1
nocache;
创建trigger:
create or replace trigger insert_on_student_trit
before insert on student
for each row
begin select seq_student.nextval into:new.id from dual;
end insert_on_student_tri;
插入数据测试:
insert into student(name,birth,score) values('李四',to_date('20150209','yyyymmdd'),88);
而要通过sequence和触发器共同协作来实现主键的自动增长。
例子:
创建表:
create table student (
id int not null primary key,
name varchar(30),
birth date,
score number(5,2)
);
创建sequence:
create sequence seq_student
minvalue 1
maxvalue 99999
start with 1
increment by 1
nocache;
创建trigger:
create or replace trigger insert_on_student_trit
before insert on student
for each row
begin select seq_student.nextval into:new.id from dual;
end insert_on_student_tri;
插入数据测试:
insert into student(name,birth,score) values('李四',to_date('20150209','yyyymmdd'),88);
相关文章推荐
- oracle主键自动增长的实现 Oracle Sequence oracle maxid自动生成--ORA-00001: 违反唯一约束条件 (NAME.SYS_C005547)产生的原因之一(select * from all_cons_columns w
- oracle 主键自动地址实现
- Oracle 使用触发器实现主键自动增长
- oracle使用序列和触发器实现主键的自动增长
- oracle实现主键自动增长
- oracle 主键应用序列和触发器实现自动增长
- oracle利用触发器实现主键的自动增加
- Oracle 实现主键自动增长之序列,触发器
- oracle中实现主键的自动增加(csdn)
- Oracle和SQLSERVER实现主键自动增长
- oracle中实现主键的自动增加
- oracle中实现主键的自动增加
- oracle 如何实现主键id自增,或自动生成
- oracle中实现主键的自动增加
- oracle中实现主键的自动增加
- oracle实现自动插入自增长序列
- oracle中的主键自动增长
- 如何在Oracle 中实现类似自动增加 ID 的功能?
- oracle 创建自动增加主键的表
- 在oracle中实现自动增长的列号(例子