Oracle中NEXTVAL案例详解_oracle

来源:脚本之家  责任编辑:小易  

1.什么是sequence?其作用是什么?

        在Oracle数据库中,什么是序列呢?其中的作用是什么呢?其实sequence是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。其主要的用途是生成表的主键值,可以在插入语句中引用,在插入之前,获取序列号nextval值,然后进行插入。也可以通过查询检查当前值,或使序列增至下一个值。

2.如何定义一个sequence?

  create sequence INR_REQUIRMENT_SQUENCE  
  INCREMENT BY 1 -- 每次加几个
  START WITH 1 -- 从1开始计数
  NOMAXVALUE -- 不设置最大值
  NOCYCLE -- 一直累加,不循环
  CACHE 10;

    上面语句则创建了一个sequence?

 3.如何获取一个sequence的值?

       SELECT INR_REQUIRMENT_SQUENCE.CURRVAL FROM dual  --获取当前的sequence的值,第一次NEXTVAL返回的是初始值;随后的NEXTVAL会自动增加你定义的INCREMENT BY值, 然后返回增加后的值。CURRVAL 总是返回当前sequence的值,但是在第一次NEXTVAL 初始化之后才能使用CURRVAL,否则会出错。一次NEXTVAL会增加一次sequence的值, 所以如果你在同一个语句里面使用多个NEXTVAL。

4.可以在哪些地方使用Sequence?

- 不包含子查询、snapshot、VIEW的 SELECT 语句

- INSERT语句的子查询中

- NSERT语句的VALUES中

- UPDATE 的 SET中

在实际开发中,比如一个表中的主键需要先得到主键ID,可以用NEXTVAL来获下一个取序列值,然后再进行其他操作。

5.如何删除Sequence?

         DROP sequence policy_id_seq; --policy_id_seq为sequence的名字,如果要改变sequence中的初始值,必须先删除序列号然后再进行创建。你或者是该sequence的owner,或者有ALTER ANY sequence权限才能改动sequence,直接用Alter语句进行sequence的更新。   

到此这篇关于Oracle中NEXTVAL案例详解的文章就介绍到这了,更多相关Oracle中NEXTVAL内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:Oracle区别ADG与DG案例详解oracle创建用户过程详解Oracle rac案例讲解Oracle存储过程案例详解Oracle之TO_DATE用法详解如何使用Oracle PL/SQL 实现发送电子邮件功能(UTL_MAIL)springboot+mybatis-plus+oracle实现逻辑删除oracle+mybatis-plus+springboot实现分页查询的实例

  • 本文相关:
  • oracle数据库基本常用命令汇总
  • linux服务器开机启动oracle的设置方法
  • oracle与sql server在企业应用的比较
  • oracle插入日期数据常见的2个问题和解决方法
  • oracle中查看表空间使用率的sql脚本分享
  • oracle实现查询2个日期所跨过的月份列表/日期列表的方法分析
  • oracle 获取上周一到周末日期的查询sql语句
  • 在oracle的函数中,返回表类型的语句
  • oracle截取字符串去掉字段末尾指定长度的字符
  • oracle数据库迁移到mysql的方法总结
  • oracle中如何求n个字段相同行记录的最小值?
  • 问个ORACLE中SQL语句写法,取表第N条记录的问题
  • 在oracle中这条SQL语句哪里错了 select top 3 * from zjxxb whe...
  • oracle中select count(*) into n... if n>0 then select ...into..有比较方...
  • 有N条数据在oracle数据库中,怎样得到离当前系统时间最近的一...
  • oracle 中 ,字段m在字段n下有多个值对应,想让n在不同条件下等...
  • oracle从表中查询出N条数据,怎么遍历循环这些数据修改
  • oracle 中substr(field,0,n)和substr(field,1,n)截出来的值一样。
  • 如何在oracle数据库中每次随机查出记录不同的n条记录
  • oracle中字符串比较
  • ORACLE里如何获取前n行的值啊!
  • oracle中,我写了一个function,运行了N多次,总是显示“实际返回...
  • oracle中substr(‘abcde’,-3,3)是什么意思
  • 在ORACLE查询语句中,如何将结果集一个字段分列成N个字段...
  • oracle中如何用一个语句来表示多个条件下的不同结果,例如 显...
  • Hibernate的HQL查询Oracle数据库中的日期并且按照group by ...
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页oracle区别adg与dg案例详解oracle创建用户过程详解oracle rac案例讲解oracle存储过程案例详解oracle之to_date用法详解如何使用oracle pl/sql 实现发送电子邮件功能(utl_mail)springboot+mybatis-plus+oracle实现逻辑删除oracle+mybatis-plus+springboot实现分页查询的实例oracle数据库基本常用命令汇总linux服务器开机启动oracle的设置方法oracle与sql server在企业应用的比较oracle插入日期数据常见的2个问题和解决方法oracle中查看表空间使用率的sql脚本分享oracle实现查询2个日期所跨过的月份列表/日期列表的方法分析oracle 获取上周一到周末日期的查询sql语句在oracle的函数中,返回表类型的语句oracle截取字符串去掉字段末尾指定长度的字符oracle数据库迁移到mysql的方法总结oracle 查看表空间的大小及使用情linux系统(x64)安装oracle11g完oracle数据库下载及安装图文操作oracle存储过程基本语法介绍oracle 10g 安装教程[图文]oracle 如何查询被锁定表及如何解基于ora-12170 tns 连接超时解决oracle中to_date详细用法示例(ororacle数据库tns配置方法详解sqlplus登录\连接命令、sqlplus命oracle 数据库数据迁移解决方案oracle如何恢复被覆盖的存储过程[oracle] 如何使用触发器实现ip限制用户登rman恢复方案和oracle异机恢复oracle中的半联结和反联结详解pl/sql数据类型及操作符windows server 2008 r2(win7)登陆sqlpluoracle中的id号实现自增长的方法oracle分区表之hash分区表的使用及扩展oracle数据库事务隔离级别介绍
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved