问题原因:

·当我们使用序列作为插入数据时,如果使用了“延迟段”技术,则跳过序列的第一个值

·Oracle从 11.2.0.1版本开始,提供了一个“延迟段创建”特性:

当我们创建了新的表(table)和序列(sequence),
在插入(insert)语句时,序列会跳过第一个值(1)。
所以结果是插入的序列值从 2(序列的第二个值) 开始, 而不是 1开始。

想要解决这个问题有两种方法: 
 更改数据库的“延迟段创建”特性为false(需要有相应的权限)

ALTER SYSTEM SET deferred_segment_creation=FALSE;

或者 
 在创建表时让seqment立即执行,如:

CREATE TABLE tbl_test(
test_id NUMBER PRIMARY KEY,
test_name VARCHAR2(20)
)
SEGMENT CREATION IMMEDIATE;
												

oracle序列为什么不是从1开始的更多相关文章

  1. oracle 序列中cache 有什么用途

    create sequence name increment by x //x为增长间隔 start with x //x为初始值 maxvalue x //x为最大值 minvalue x //x为 ...

  2. oracle序列

    一.序列 序列是oracle用来生产一组等间隔的数值.序列是递增,而且连续的.oracle主键没有自增类型,所以一般使用序列产生的值作为某张表的主键,实现主键自增.序列的编号不是在插入记录的时候自动生 ...

  3. oracle 序列 详解

    序列: 是oacle提供的用于产生一系列唯一数字的数据库对象. l  自动提供唯一的数值 l  共享对象 l  主要用于提供主键值 l  将序列值装入内存可以提高访问效率 创建序列: 1.  要有创建 ...

  4. 触发器 'SA.U_USER_INFO_TRG' 无效且未通过重新验证--Oracle序列

    程序开发时报错:触发器 'SA.U_USER_INFO_TRG' 无效且未通过重新验证打开触发器的定义,执行其中的语句,发现序列 U_USER_INFO_SEQ 未定义.什么是序列呢?序列相当于sql ...

  5. Oracle序列使用:建立、删除

    转自:http://www.cnblogs.com/WangPB/archive/2010/07/13/1776766.html 在开始讲解Oracle序列使用方法之前,先加一点关于Oracle cl ...

  6. Oracle 序列的应用

    Oracle创建序列,删除序列,得到序列 序列的创建 create sequence seq_newsId increment by 1 start with 1 maxvalue 999999999 ...

  7. ORACLE序列的使用总结

    1.创建序列ORACLE序列的语法格式为: CREATE SEQUENCE 序列名[INCREMENT BY n][START WITH n][{MAXVALUE/ MINVALUE n|NOMAXV ...

  8. SQL server 和Oracle 序列

    1,SQL Server序列创建与使用 BEGIN IF EXISTS (SELECT * FROM sysobjects WHERE name = 'event_seq') DROP SEQUENC ...

  9. oracle 序列介绍

    序列介绍 序列是一个计数器,它并不会与特定的表关联.通过创建Oracle序列和触发器实现表的主键自增. 序列的用途一般用来填充主键和计数. 序列使用 1.创建序列 ORACLE序列的语法格式为: CR ...

  10. oracle序列的创建和使用

    oracle 序列的创建与使用 (2012-03-15 16:14:09) -------------------------------------------------------------- ...

随机推荐

  1. Hibernate——基础及XML配置

    1.入门 hibernate是跟数据库打交道的,一般跟数据库打交道的都不简单 原始.底层直接的一些操作.编码量比较大.费时.用框架高效 把原来一点一点实现的东西,现在给个半成品,不用在这上边发时间,把 ...

  2. Maven开发基础总结(Maven自启动,Maven打war包,Maven热部署)

    学习内容: 1.不依赖外部Tomcat,自己启动方式部署 2.Maven打war包,远程部署到centOS 3.Maven热部署(不关闭Tomcat部署应用)   做maven开发前提: 1.编码UT ...

  3. UML分析与设计

    考点: 掌握面向对象的分析与设计 掌握UML描述方法 用例图.类图.序列图.状态转换图 类图:类的属性.方法的识别:类间的各种关系 类图:实体.联系 各种关系图例: 泛化:取公共属性 关联分为聚合.组 ...

  4. 制作一个属于自己的BHO吧!(C#) (转)

    摘自:http://tech.ddvip.com/2013-05/1369758775196257.html BHO(Browser Helper Object)是插件,它寄存在IE浏览器中运行.在咱 ...

  5. HTML笔记(六)文档类型

    <!DOCTYPE>声明帮助浏览器正确显示网页.一般放在页面的最前面. DTD是Document Type Definition的缩写,是一套关于标记符的语法规则,是一种文档验证机制. H ...

  6. 你是码农还是Geek?

    现在深深的体会到,不仅仅人与人的差别是巨大的,程序员与程序员之间的差别同样很明显的. 普通的程序员仅仅是完成自己的任务,完成任务后不思进取,不再修改自己的代码,不再去想有没有更好的实现方式,其实重构自 ...

  7. javascript学习-原生javascript的小特效(多物体运动效果)

    前些日子看了个视频所以就模仿它的技术来为大家做出几个简单的JS小特效 今天为大家做的是多个物体的运动效果, 1:HTML <body> <ul>       <li> ...

  8. iOS - Swift available 平台判断

    前言 Swift 语言中的 @available 和 #available,Swift 2.0 中,引入了可用性的概念.对于函数,类,协议等,可以使用 @available 声明这些类型的生命周期依赖 ...

  9. SAP 批量查看凭证更改记录

    1,在凭证上点击环境->凭证变更 查找.2,通过运行程序 SE38:RSSCD1TS 根据对象类.对象标识查找. 3,SE16N/SE16/SE11查看标准表,CDHDR(更改凭证抬头),CDP ...

  10. mysql 权限控制

    1.mysql的权限是,从某处来的用户对某对象的权限. 2.mysql的权限采用白名单策略,指定用户能做什么,没有指定的都不能做. 3.权限校验分成两个步骤: a.能不能连接,检查从哪里来,用户名和密 ...