`

Oracle sequence cache

 
阅读更多
create  table tab_test_seq(id number,col1 number(14) ,col2 varchar2(24)) ;
create sequence seq_test_insert;--seqence默认cache是20
alter sequence seq_test_insert  nocache;



SQL> select sequence_name,cache_SIZE  from dba_sequences where sequence_name  = 'SEQ_TEST_INSERT' ;

SEQUENCE_NAME                  CACHE_SIZE
------------------------------ ----------
SEQ_TEST_INSERT                    0

--查看执行时间
SQL> set timing on
SQL> begin
  2  for i in 1..50000 loop
  3  insert into tab_test_seq(id,col1,col2) values(seq_test_insert.nextval,99999,'qqq');
  4  end loop;
  5  commit;
  6  end;
  7  /

PL/SQL 过程已成功完成。

已用时间:  00: 00: 09.78

--修改cache
drop table tab_test_seq purge;
drop sequence seq_test_insert;
--重新建表
create  table tab_test_seq(id number,col1 number(14) ,col2 varchar2(24)) ;
create sequence seq_test_insert;--seqence默认cache是20
alter sequence seq_test_insert cache 1000;

--时间差别还是蛮大的,若在多会话插入及rac环境中,效率的影响更大
SQL> begin
  2  for i in 1..50000 loop
  3  insert into tab_test_seq(id,col1,col2) values(seq_test_insert.nextval,99999,'qqq');
  4  end loop;
  5  commit;
  6  end;
  7  /

PL/SQL 过程已成功完成。

已用时间:  00: 00: 02.29

 

分享到:
评论

相关推荐

    Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍

    * 如果指定 CACHE 值,ORACLE 就可以预先在内存里面放置一些 SEQUENCE,这样存取的快些。但是,使用 CACHE 可能会跳号,例如数据库突然不正常 down 掉。 Oracle SEQUENCE 是一种灵活而强大的功能,可以满足各种需要...

    ORACLE SEQUENCE的简单介绍

    ### ORACLE SEQUENCE 的详细介绍与应用 #### 一、概述 在数据库开发和管理中,自动编号是一项常用的功能。在 SQL Server 中,我们可以通过自增字段来实现这一功能。而在 Oracle 数据库中,则使用了一个名为 **...

    oracle中sequence介绍及应用

    ### Oracle中的Sequence介绍及应用 #### 一、Sequence概述 在Oracle数据库中,Sequence是一种用于自动产生数值序列的对象。它可以生成连续的整数或者非连续的整数序列,并且可以根据需求进行递增或递减。Sequence...

    让CoolSQL支持Oracle Sequence的GeneratedKey,懂的入

    本篇文章将围绕"让CoolSQL支持Oracle Sequence的GeneratedKey"这一主题展开,探讨如何在开发过程中利用Oracle的Sequence特性并将其与CoolSQL工具相结合,以实现更高效的数据操作。 首先,Oracle Sequence是一种用于...

    分享ORACLE SEQUENCE跳号总结

    在ORACLE数据库中,序列(SEQUENCE)是使用非常频繁的一个数据库对象,但是有时候会遇到序列(SEQUECNE)跳号(skip sequence numbers)的情形,那么在哪些情形下会遇到跳号呢?  事务回滚引起的跳号  不管序列有...

    oracle GoldenGate 同步oracle sequence的步骤

    ### Oracle GoldenGate 同步 Oracle Sequence 的步骤 Oracle GoldenGate 是一款强大的数据复制软件,能够实现跨平台的数据复制。在企业级应用环境中,为了确保数据的一致性和完整性,经常需要将源数据库中的序列...

    Hibernate Oracle sequence的使用技巧

     1、在Oracle sequence首先创建sequence  create sequence seq_idminvalue 1start with 1increment by 1cache 20;  2、在你的hbm.xml中的配置  seq_id  这样再插入数据的时候,Hibernate会自动生成如下语句: ...

    使用JDeveloper开发WEB应用时同时使用Oracle的sequence和trigger

    例如,通过设置`CACHE 50`可以缓存一定数量的sequence值,减少对数据库的频繁访问。 7. **安全性与维护**:确保sequence和trigger的权限设置合理,防止未授权的访问和修改。定期审查和优化这些对象,以适应业务的...

    oracle 主键自增 sequence

    ### Oracle 主键自增 Sequence 的实现与应用 #### 一、Sequence 的概念及用途 在 Oracle 数据库中,`Sequence` 是一种用于生成一系列唯一数值的对象。这些数值可以按照特定的规则递增或递减,并且可以设定是否循环...

    详解ORACLE SEQUENCE用法

    在oracle中sequence就是序号,每次取的时候它会自动增加。sequence与表没有关系。 1、Create Sequence 首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限。 创建语句如下: CREATE SEQUENCE seqTest INCREMENT...

    oracle自动增长列

    在Oracle数据库中,实现自动增长列的功能主要依赖于`SEQUENCE`对象。通过创建一个序列(SEQUENCE),可以方便地为表中的某列自动生成唯一的值,这对于主键或者需要唯一标识符的场景非常有用。 #### 1. SEQUENCE概述...

    oracle_sequence.rar_oracle

    在Oracle中,序列(Sequence)是一个非常重要的概念,它主要用于生成唯一的整数序列,常常被用来作为主键值,特别是在插入新记录时自动增加。在本篇文章中,我们将深入探讨Oracle序列的创建、使用以及其在实际应用中...

    oracle 存储过程使用 sequence

    Oracle提供了`CACHE`选项来缓存Sequence值,提高性能,但可能会导致序列号不连续。如果不使用`CACHE`,每次请求都会从数据库获取新的值,保证了序列的唯一性但可能降低性能。 在提供的压缩包文件`07_调整级别示例...

    oracle中的sequence实现主键增长

    Oracle中的Sequence是数据库管理系统提供的一种机制,用于生成序列化的整数,通常用于主键或唯一标识符,确保数据的唯一性和有序性。在Oracle中,Sequence不同于其他数据库系统的自增字段,例如SQL Server中的`...

    sequence等同于序列号

    ### Oracle数据库中的Sequence机制详解 #### 一、概述 在Oracle数据库中,`sequence`机制是一种自动生成唯一数值序列的方法,常用于为主键字段提供连续的整数值。它类似于其他数据库系统中的自动增长字段,但在...

    Sequence简单介绍.pdf

    - **Oracle端**:在Oracle数据库中,`Sequence`是生成连续数字的一种机制,通常用于创建主键。可以通过`CREATE SEQUENCE`语句创建一个序列,并且能够通过`NEXTVAL`和`CURRVAL`来获取序列的下一个值以及当前值。 - *...

    Oracle创建自增字段sequence

    在Oracle数据库中,由于没有像SQL Server那样内置的自增字段功能,我们通常需要通过创建序列(SEQUENCE)和触发器(TRIGGER)来模拟这一效果。以下将详细讲解如何在Oracle中创建自增字段sequence,并讨论其相关知识...

Global site tag (gtag.js) - Google Analytics