您好,欢迎访问一九零五行业门户网

Oracle PL/SQL 设置主键自动递增

oracle没有设置主键auto increment 的功能,需要自己白那些序列和触发器实现主键自动递增。
oracle没有设置主键auto increment 的功能,需要自己白那些序列和触发器实现主键自动递增。
示例:
创建表menu:
create table menu( menuid number(10) not null primary key,
    name varchar2(40) not null,
    id_parent number(10) not null,
    url varchar2(300) null);
创建序列menu_autoinc_seq:
create sequence menu_autoinc_seq
      minvalue 1
      maxvalue 99999999
      start with 1
      increment by 1
      nocycle
      nocache
      order;
创建触发器menu_autoinc_tg:
    create or replace trigger menu_autoinc_tg
    before insert on menu for each row
    begin
    select menu_autoinc_seq.nextval into :new.menuid from dual;
    end menu_autoinc_tg;
其中end语句可以写成end;
在command window进行创建数据库对象的时候,如果使用到了多行语句,,可在结束后另起一行输入/
测试:
    insert into menu values('','个人事务',0,'indi.php');
    insert into menu values('','公共事务',0,'public.php');
其它类似信息

推荐信息