序列用于生成唯一、连续序号的对象
序列是可以升序、降序的
使用create sequence语句创建序列
SQL>CREATE SEQUENCE stu_seq
START WITH 1
INCREMENT BY 1
MAXVALUE 1
MINVALUE 1
NOCYCLE 1 #在达到最大值后停止生成下一个值
CACHE 10 # 指定内存中预先分配的序号数
#显示当前用户
show user
#查询当前用户的角色
select * from user_role_privis;
#查询SCOTT用户角色
SQL> select * from dba_role_privs d where d.grantee='SCOTT';
#查询当前用户角色对应的权限
SQL>select * from role_sys_privs;
#查询当前用户的序列
select * from user_sequence;
#通过序列的伪列来访问序列的值
NEXTVAL 返回序列的下一个值
CURRVAL 返回序列的当前值
第一次使用序列对象不能返回序列当前值,只能返回序列的下一个值
SQL>select stu_seq.nextval from dual;
序列的用法
create table student (
sno number(4),
sname varchar(2)
);
SQL>insert into student values(stu_seq.nextval,'xiaoming');
SQL>insert into student values(stu_seq.nextval,'hunglong');