oracle中主键自增长,oracle 数据库主键自动增长方法

Oracle数据库不直接支持像MYSQL的自动ID增值功能,但可以通过创建序列和触发器来实现。首先创建一个序列,设定其最小值、增量、是否启用缓存和是否循环。然后创建一个触发器,在插入数据到指定表之前,利用序列的nextval获取新的ID值并赋给主键列。这种方法确保了表中ID的自动递增。
摘要由CSDN通过智能技术生成

oracle 数据库没有像 MYSQL一样有 自动ID增值 的功能,如要实现可以用触发器。

首先就是建立一个序列,序列有有自动增值的功能,再建立一个触发器。

如:

建立一个序列

CREATE SEQUENCE auto_seq

minvalue 1 -- 最小值

increment by 1 -- 每次增加值数

nocache -- 不启用缓存

nocycle -- 不循环;

建立一个触发器

CREATE OR REPLACE trigger auto_id_tri

before insert on pjsh_person -- before 表示插入新数据时执行

for each row -- 每次插入数据到pjsh_person表时执行下面的oracle 语句

begin

select auto_seq.nextval into :NEW.ID from dual;

end;

auto_id_tri 触发器名

auto_seq.nextval 提取auto_seq 序列的值

:NEW.ID  ID为要添加的主键列名

pjsh_person 要添加自动ID值的表名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值