Oracle中主键增长

 大家编程的时候想让相应的主键值自动增长,免得在插入语句的时候每次要插入主键值,所以设定主键自动增长是一个非常好的编程习惯。能够数量应用主键自动增长以及触发器在数据库编程中是非常重要的。
        下面分享下我在设定主键自动增长上的一些见解:高手指教。
        首先要创建一个序列,来指定对于那个主键进行增长。
        注意:序列名不能和主键名同名;要符合命名规范,一般是sq_相应表(主键)英文所写
        如 sq_studentID 学生编号序列。创建好序列后就创建触发器,触发器命名要符合命名规范。我将不再啰嗦。
创建序列语法:
create sequence sq_studentID
minvalue 1                        --最小值
maxvalue 10000             --最大值
increment by 1                 --主键每次增长1
start with 1                        --主键从1开始添加
cache 20                          --设定CPU缓存 20
order;     

--创建触发器
create trigger tr_into_studentInf            --相对与studentInfo表
before                                       --在执行语句前,还是后。
insert  on studentInfo for each row          --执行插入操作
begin                                        --开始执行语句
select sq_studentID.nextval into :new.student_id from dual; --该句我的理解是将查询到的下一个主键值即自动增长的值插入到学生编号列上。 新增的id在临时表dual中存放。

end

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值