【Oracle】主键自增设置

来源:互联网 发布:淘宝300元拉布拉多幼犬 编辑:程序博客网 时间:2024/05/16 06:16
下面用一个例子来说明自增主键的创建:
1、建用户数据表
      drop table dectuser;
      create table dectuser(
           userid integer primary key,  /*主键,自动增加*/
           name varchar2(20),
           sex varchar2(2)
           );
2、创建自动增长序列
      drop sequence dectuser_tb_seq;
      create sequence dectuser_tb_seq minvalue 1 maxvalue 99999999
               increment by 1
               start with 1;   /*步长为1*/
3、创建触发器
      create or replace trigger dectuser_tb_tri
          before insert on dectuser     /*触发条件:当向表dectuser执行插入操作时触发此触发器*/
          for each row                       /*对每一行都检测是否触发*/
          begin                                  /*触发器开始*/
                 select dectuser_tb_seq.nextval into :new.userid from dual;   /*触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq的下一个值插入到表dectuser中的userid字段中*/
          end;
4、提交
      commit;
      现在就完成了自增主键的设定,搞定!可以检测一下。
      insert into dectuser(name,sex) values ('wang','女');

      提示“已创建一行”,表示成功。
原创粉丝点击