Oracle 入门 2.数据表的创建、删除 和 序列的创建、访问、修改、删除、使用

--序列的创建、访问、修改、删除、使用

--创建序列语法 (seq1)
--start with : 第一个序列号
--increment by : 序列号之间的间隔
--maxvalue : 最大值
--nomaxvalue : 默认设置升序最大值10^27,降序最大值-1
--minvlaue : 最小值
--nominvalue : 默认设置升序最小值1,降序最小值-10^26
--cycle : 到达序列到达的最大值或最小值后,将继续从头开始生成值
--nocycle : 到达序列到达的最大值或最小值后,将不能继续从头开始生成值,默认值
--cache : 预先分配序列号,放内存
--nocache : 不预先分配序列号,都不写,默认缓存20个
create sequence seq1
       start with 10
       increment by 1
       maxvalue 2000
       nocycle
       cache 30;
       
--访问序列语法 (seq1)
--nextval : 第一次使用返回序列初始值,再引用时,将使用increment by 字句增加序列值,并返回新值
--currval : 返回序列当前值,即最后一次引用nextval时返回的值

--创建(toys)玩具表
create table toys (
       toyid number(4) not null  primary key,--玩具id,必填
       toyname varchar2(10) not null,--玩具名 
       toyprice number(5)--玩具单价    
)

--删除表数据
drop table toys;

--查看(toys)玩具表
select * from toys;

--插入数据 (toys)玩具表
insert into  toys (toyid,toyname,toyprice)
       values(seq1.nextval,'玩具车',25);
insert into toys (toyid,toyname,toyprice)
       values(seq1.nextval,'玩具熊',55);            

--查询序列的当前值
select seq1.currval from dual;       
       
--修改序列的命令
--不可修改序列的起始值start with参数
--修改时,应注意升序序列最小值必须小于最大值
--alter sequence 命令修改序列的定义
alter sequence seq1
      increment by 2--修改间隔为2
      nomaxvalue--删除最大值,定义为默认最大值设定
      nocache--不预先缓存
      
--删除序列的命令
--drop sequence命令为删除序列

drop sequence seq1;


猜你喜欢

转载自blog.csdn.net/qq_35394434/article/details/81045848