Welcome 微信登录

首页 / 数据库 / MySQL / Oracle PL/SQL 设置主键自动递增

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");更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle 新建用户、角色、授权、建表空间Oracle ORA-12560解决方法相关资讯      PL/SQL  Oracle PL/SQL  Oracle主键递增 
  • PL/SQL之存储过程和函数  (今 14:09)
  • PL/SQL Developer连接本地Oracle   (07月27日)
  • 【PL/SQL系列】Oracle存储过程使用  (04月23日)
  • PL/SQL Developer 使用技巧分享  (09月16日)
  • PL/SQL实现Java中的split()方法的  (07月10日)
  • 从一个案例看PL/SQL代码片的编译与  (03月04日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数