Advertisement

Oracle中表新增数据实现id自增长的方式

阅读量:

1.问题

Oracle数据库在使用PL/SQL工具或者sqldeveloper时,在新建表的过程中无法像MySQL那样自动设置自增主键。特别是在开发或学习过程中,为实现有效的数据管理功能,自增主键的实现则成为了一个必要的任务。

2.分析

在Oracle中,实现 id 自增长的方式是序列+触发器的方式,即:

auto_increment = 序列 + 触发器

3.实现方式

(1)新建一个表

复制代码
 --1.创建表

    
 create table test02 (
    
    id int primary key,
    
    name_ varchar2(30)
    
 );

(2)创建序列

复制代码
 --2.创建序列

    
 create sequence sql_id; --sql_id为序列名

可查询序列情况

复制代码
 --nextval:获取下一个值

    
 select sql_id.nextval from dual;

查询结果:

序列的信息;

(3)创建触发器

复制代码
 --3.创建触发器

    
 create or replace trigger tr4
    
    before insert on test02 for each row
    
 declare
    
    select sql_id.nextval into :new.sid from dual;
    
 end;

(4)测试,添加记录

4.总结

举的例子比较简单,再复杂的SQL其实也是大同小异,原理相通。

全部评论 (0)

还没有任何评论哟~