如何对oracle数据库中的表设置主键自增?

    技术2022-06-11  62

    oracle中没有自增字段,可通过序列+触发器间接实现,cmd中sqlplus登录,直接运行即可。一般要经过一下几步:

    1建立数据表

    create table Test_Increase(           userid number(10) primary key,  /*主键,自动增加*/           username varchar2(20)           );

    2创建自动增长序列

      CREATE  SEQUENCE TestIncrease_Sequence INCREMENT  BY   1     --  每次加几个        START  WITH   1       --  从1开始计数        NOMAXVALUE        --  不设置最大值        NOCYCLE           --  一直累加,不循环        CACHE  10 ; 

    3创建触发器

    CREATE   TRIGGER  Test_Increase BEFORE insert   ON   Test_Increase  FOR  EACH ROW begin select  TestIncrease_Sequence.nextval  into :New.userid  from  dual; end ;

    4 提交

    commit;

    5 测试

    反复执行如下语句:

    insert   into  Test_Increase(Username)  values ( ' test ' )

    6 查看插入结果:

    userid username

     1       test 2       test 3       test 4       test 5       test 6       test 7       test 8       test 9       test


    最新回复(0)