转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
- 序列是用于生成唯一、连续序号的对象
- 一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp start with 1 --开始值 increment by 1 --増长值 maxvalue 99999999999 --最大值 minvalue 1 --最小值 cycle --是否重新开始NOCYCLE cache 20 --缓存中的个数,默认是开启的20个 ;
参数说明:
- cycle:当序列达到最大值时或者最小值时,是否继续生成整数。当升序达到最大值时,下一生成的值是最小值。当降序生成达到最大值时,下一生成的值时最大值。
- nocycle:指定序列生成到最大值或者最小值时,不能再继续生成整数,nocycle是默认值。
- NOMAXVALUE:为升序指定最大值为1027,为降序指定最大值为-1。
- NOMINVALUE:为升序指定最小值为1。为降序指定最小值为-1026。
备注:容许设计缺省序列,不需指定任何子句。该序列为上升序列,由1开始,增量为1,没有上限。
例如:create sequence s_emp;
3.删除序列语法如下:
DROP SEQUENCE [user.]sequence_name;
4.修改序列语法如下:
例如:将最大值修改为300,缓冲修改为30
alter sequence sequence_name maxvalue 300 cache 30;
修改序列时需要注意几点:
- 不能修改序列的初始值
- start with选项不能修改
- 序列的最小值不能大于当前值(currval)
- 序列的最大值不能小于当前值(currval)
- 在实际开发中,我一般是这样做的,不存在修改,都是直接删除后然后创建,这样多简单。
5.使用序列:
select s_emp.nextval from dual; select s_emp.currval from dual;
使用序列时,必须通过伪列nextval和currval引用序列,其中伪列nextval用于返回下一个序列号,而伪列currval用于返回当前序列号。需要注意的是,首次使用序列时,必须使用伪列nextval.
6:获取序列相关的信息
如果希望查询当前用户定义的序列值,那么可以使用user_sequences视图
select * from user_sequences;
含义如下:
列 | 描述 |
SEQUENCE_NAME | 序列名 |
MIN_VALUE | 最小值 |
MAX_VALUE | 最大值 |
INCREMENT_BY | 序列增量 |
CYCLE_FLAG | 是否循环(Y/N) |
CACHE_SIZE | 缓冲区大小 |
LAST_NUMBER | 该序列生成或缓冲的最后一个数字 |
相关推荐
- 通过序列执行循环。 - 示例: ```sql DECLARE cnt NUMBER; BEGIN FOR cnt IN 1..3 LOOP INSERT INTO t_table VALUES ('stillinloop'); END LOOP; END; ``` ### 游标 1. **声明与打开游标** - 定义一...
根据提供的Oracle复习笔记内容,我们可以总结出以下详细的Oracle知识点: ### 1. 使用 DISTINCT 进行去重查询 - **语法**: `SELECT DISTINCT column_name FROM table_name;` - **示例**: `SELECT DISTINCT xx FROM...
文件"oracle复习.docx"可能包含了上述知识点的详细讲解和示例代码,对于学习和复习Oracle知识非常有帮助。通过深入学习和实践,你可以逐步掌握Oracle数据库的精髓,成为一名熟练的数据库管理员或开发者。
这份"Oracle培训18天老师笔记"涵盖了Oracle数据库的基础到高级知识,是学习Oracle技术的宝贵资料。以下是对笔记中可能包含的重要知识点的详细解释: 1. **Oracle基础知识**:这部分可能介绍了Oracle的历史、数据库...
6. "2015081303_数据伪列.doc":数据伪列是Oracle特有的功能,可能涉及虚拟列、序列或隐藏列等概念。 7. "2015081103_分组统计查询.doc":介绍了SQL中的GROUP BY语句和聚合函数,如COUNT、SUM、AVG等,用于数据的...
SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Java开发人员早期常见...阅读"java认证笔记.doc"文档将帮助你系统地复习这些概念,提高应对考试的能力。祝你考试顺利,取得优异的成绩!
Garfield的SCJP阅读笔记通过文档形式记录了这些内容,为备考SCJP的读者提供了一个系统的复习资料,帮助他们更好地理解和掌握Java编程的核心概念,从而提高编程能力和通过认证考试的可能性。通过详尽学习和实践这些...
本部分将详细介绍如何使用SQL语句进行这些基本操作,并通过Oracle数据库中的`scott`账户下的`employee`表为例来进行具体演示。 ##### 1. 创建数据库与表 - **创建数据库**: 在大多数情况下,数据库管理系统提供了...
### 数据库知识点整理 #### 一、数据库与表的基本操作 - **数据库和表的创建**: ...以上是对数据库基本操作的一些重要知识点总结,涵盖了创建、修改、查询等方面的内容,对于初学者和需要复习的人来说都非常有用。
4. **复习笔记**:重点难点的整理,方便快速回顾。 5. **实例代码**:实践案例,加深对理论知识的理解。 6. **视频教程**:通过视频形式讲解各个主题,使学习更直观。 7. **闪卡或记忆卡片**:用于记忆关键概念和API...
SCJP(Sun Certified Programmer for the Java Platform, Standard Edition 6)是Oracle公司为Java程序员提供的一项认证考试,主要测试考生对Java SE 6平台的基本理解与编程能力。这个压缩包文件"SCJP-065 资料"可能...
这个压缩包文件包含了从2010年至2018年间多个年份的Java语言程序设计(一)的自考试卷及其答案,对于考生来说是一份宝贵的复习资源。 首先,我们来了解一下Java语言的核心概念。Java是一种面向对象的编程语言,由Sun ...
Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation)于1995年发布,以其“一次编写,到处运行”的特性而闻名。这个"Auckland"压缩包文件可能是包含了一套完整的Java学习资料或...
Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)于1995年发布。它的设计目标是“一次编写,到处运行”,这意味着编写好的Java代码可以在任何支持Java的平台上运行,无需重新编译。...