时间:2021-07-01 10:21:17 帮助过:33人阅读
Oracle 中序列使用详解: create table test (pid integer primary key, name varchar(20) ); select * from test

首页 → 数据库技术
背景:
阅读新闻
Oracle 中序列使用详解
[日期:2011-09-13] 来源:Linux社区 作者:myxx520 [字体:]
Oracle 中序列使用详解:
create table test  
(pid integer primary key,  
  name varchar(20)  
  );  
    
  select * from test;  
  insert into test values(1,'Jack');  
  
create sequence test_seq;--创建序列   
select test_seq.nextval from dual;--每次使用后序列加一   
select test_seq.currval from dual;--查询当前序列的值   
insert into test values(test_seq.nextval,'Jack Or Duck?');--序列的使用   
drop sequence test_seq;--删除序列   
create sequence test_seq start with 8;--指定序列的初始值   
alter sequence test_seq minvalue 9;--设置序列的最小值   
alter sequence test_seq maxvalue 9999;--设置序列的最大值   
alter sequence test_seq increment by 1;--设置序列的步长   
drop sequence test_seq_1;  
create sequence test_seq_1 start with 3 minvalue 1 maxvalue 30 increment by 1;  
select test_seq_1.nextval from dual;  
alter sequence test_seq_1 cycle;  
alter sequence test_seq_1 nocycle;--关闭循环取值功能   
alter sequence test_seq_1 cache 10;  
  
--设置序列缓存大小的作用,注:序列缓存默认为20   
create sequence test_seq_2 start with 1 minvalue 1 maxvalue 20 increment by 3;  
alter sequence test_seq_2 cycle;  
  
--上述语句会报错:Cache值必须小于cycle值   
  
alter sequence test_seq_2 increment by 2;  
alter sequence test_seq_2 cycle;  
--还是报错   
alter sequence test_seq_2 increment by 1;  
alter sequence test_seq_2 cycle;  
--还是报错   
alter sequence test_seq_2 maxvalue 21;  
alter sequence test_seq_2 cycle;  
--不报错了   
  
--或者修改   
alter sequence test_seq_1 cache 5;  
--start with 1 and maxvalue 10 step 1 then 10 times cycle and bigger than 5   

了解Oracle权限管理
Oracle PL/SQL之对象权限与系统权限的撤销差异
相关资讯 Oracle教程
图片资讯
本文评论 查看全部评论 (0)
评论声明
最新资讯
本周热门
Linux公社简介 - 广告服务 - 网站地图 - 帮助信息 - 联系我们
本站(LinuxIDC)所刊载文章不代表同意其说法或描述,仅为提供更多信息,,也不构成任何建议。
Copyright © 2006-2011 Linux公社 All rights reserved 浙ICP备06018118号