系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 数据库 > oracle > 详细页面

Oracle中sequence(序列)使用方法详解

时间:2023-03-15来源:系统城装机大师作者:佚名

sequence是Oracle中的序列,可以实现字段的自增或自减效果

Oracle与MySQL、SQL server不同,没有直接实现字段自增的功能,需要我们使用自增序列去实现

如:

1
2
3
4
5
6
7
--设置自增序列,名称为"seq_userinfo",名字任意命名
create sequence seq_userinfo
 increment by 1     --每次+1 
 start with 1       --从1开始
 nomaxvalue         --不限最大值
 nominvalue         --不限最小值
 cache 20;          --设置取值缓存数为20

1、create sequence seq_userinfo

sequence :为关键字,表示"序列"

seq_userinfo:为序列的名称,我们可以任意命名(注意符合命名规范即可)

2、increment  by  1

increment  :表示自增

by 1:表示每次变动1个整数单位

3、start with 1

表示从1开始

start with 200 :表示从200开始自增

4、nomaxvalue

表示不限制最大值,我们也可以手动设置最大值,如:

maxvalue  99999999999   --最大值为99999999999   

5、nominvallue

表示不限制最小值

6、cache  20

这个值特别重要

Oracle默认cache=20

cache的作用:当设置cache=20,第一次新增时,会往Oracle服务器的缓存中,存储20个整数值,例如,我们第一次新增是从1开始,就会把1到20这个20个数字存储到Oracle缓存中,当下一次新增时,直接从缓存中获取数字

优点:提高了insert时的效率,这里的cache效果与Java中的连接池效果是一致的!

缺点:Oracle服务器会存在不确定因素,从而导致缓存被刷新,从而导致cache还没使用完,cache就失效了,不能保证自增序列的连续性

说白了就是:缓存中存储1到20个数字,用到10的时候,这一次的cache就被刷新失效了,下一次再新增时,会重新设置缓存(从21开始,再拿20个数字),从而导致自增的序列出现数字不连续的情况

在后端系统中,一般是不需要保证自增序列的连续性的,因此,设置cache值是必要的

总结

到此这篇关于Oracle中sequence(序列)使用的文章就介绍到这了

分享到:

相关信息

  • Oracle数据库的系统结构

    1.Oracle数据库系统结构概述 2.Oracle数据库存储结构 物理存储结构 控制文件 数据文件 重做日志文件 归档日志文件 Oracle数据库逻辑结构 数据块(Data Block) (盘)区(Extent) 段(Segment) 表空间(Tablespace) 本地管...

    2023-10-31

  • Oracle19c最新版保姆级别最详细的安装配置教程

    windows下的Oracle19c 一、官网下载Oracle19c数据库 二、安装Oracle数据库 1.解压安装包 2.运行setup.exe安装 三、配置 四、安装完Oracle数据库,给scott用户解锁 1.解决Oracle数据库中没有scott账户的问题 2.给scott...

    2023-10-31

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载