您的位置:首页 > 数据库 > Oracle

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

2016-10-18 00:00 459 查看
前言

本篇文章给大家主要介绍的是在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_student
minvalue 1
nomaxvalue
start with 1
increment by 1
nocycle  --一直累加,不循环
nocache;

--创建触发器,如果insert语句不指定ID自动插入增长值
CREATE OR REPLACE TRIGGER tr_tb_student
BEFORE INSERT ON tb_student FOR EACH ROW WHEN (new.id is null)
begin
select seq_tb_student.nextval into:new.id from dual;
end;


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

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

总结

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

您可能感兴趣的文章:

深入Mysql,SqlServer,Oracle主键自动增长的设置详解
Oracle创建主键自增表(sql语句实现)及触发器应用
oracle删除主键查看主键约束及创建联合主键
Oracle与Mysql主键、索引及分页的区别小结
Oracle 数据库针对表主键列并发导致行级锁简单演示
Oracle学习记录之使用自定义函数和触发器实现主键动态生成
Oracle数据库中创建自增主键的实例教程
oracle 数据按主键删除慢问题的解决方法
简单三步轻松实现ORACLE字段自增
oracle中的ID号实现自增长的方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle 自增 主键
相关文章推荐