首页 > 其他 > 详细

sequence序列的使用

时间:2020-04-25 20:24:54      阅读:61      评论:0      收藏:0      [点我收藏+]

在Oracle中没有主键自增的概念,一般使用序列来完成功能。

Sequence序列:
    生成想要的主键列
创建序列:
    一般不需要设置sequence的属性,使用默认方式就可以了
    create sequence 序列名;
    如果需要设置属性,那么就加上下面的语句.
    [INCREMENT BY n]  每次拿出值加多少
    [START WITH n]    初始值从几开始
    [{MAXVALUE n | NOMAXVALUE}]  最大值
    [{MINVALUE n | NOMINVALUE}]  最小值
    [{CYCLE | NOCYCLE}]  到了最大值后是否循环(如果循环会从1开始)
    [{CACHE n | NOCACHE}] 每次在缓存里面放多少个值.
    例如:创建序列并设置属性
      create sequence seq_test 
      increment by 2
      start with 45
      maxvalue 60
      cycle
      nocache;
    drop sequence seq_test;
删除序列:
    drop sequence 序列名;
获取序列的下个值
    select 序列名.nextval from dual;
获取序列的当前值(一开始不能用,要先用nextval)
    select 序列名.currval from dual;
实例:
   create table t_user(
        id number,
        name varchar2(50) constraint user_name_nn not null,
        email varchar2(50),
        gender char(1),
        age number,
        birthday date,
        constraint user_id_pk primary key(id),
        constraint user_email_un unique(email),
        constraint user_gender_ck check(gender in(f,m))
    );
    create sequence t_user_seq;
    insert into t_user(id,name,salary) values(t_user_seq.nextval,tom,600);

sequence序列的使用

原文:https://www.cnblogs.com/Magic-Li/p/12774920.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!