ORACLE数据库设置主键自增的两种方法:序列与触发器

方法一:序列

第一步创建序列:CREATE SEQUENCE topic_sequence 
                             INCREMENT BY 1  
                             START WITH 1 
                             NOMAXVALUE  
                             nocycle 
                             nocache

第二步插入数据:insert into pd_topic   (id,topic_name)  
                             values( topic_sequence .nextval,'zhangsan')  //红色部分为序列获得的id值
   

 

 

方法二:触发器

第一步先创建序列:CREATE SEQUENCE topic_sequence 
                               INCREMENT BY 1  
                               START WITH 1 
                               NOMAXVALUE  
                               nocycle 
                               nocache

第二步创建触发器:  create or replace trigger topic_trigger 
                                  before insert on pd_topic 
                                  for each row 
                                  begin 
                                  select topic_sequence.nextval into :new.ID from dual; 
                                  end; 

第三步插入数据,不用在添加id字段,触发器会自动自增:

                              insert into pd_topic   (topic_name)  
                              values( 'zhangsan')  

                          

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值