这篇文章介绍了oracle重置序列的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

oracle序列创建以后,如果想重置序列从 0 开始,逐渐递增1,可以采用如下存储过程:

create or replace
procedure reset_seq( p_seq_name in varchar2 )
isl_val number;
beginexecute immediate'select ' || p_seq_name || '.nextval from dual' INTO l_val;execute immediate'alter sequence ' || p_seq_name || ' increment by -' || l_val ||' minvalue 0';execute immediate'select ' || p_seq_name || '.nextval from dual' INTO l_val;execute immediate'alter sequence ' || p_seq_name || ' increment by 1 minvalue 0';
end;

存储过程创建以后,调用该存储过程,参数是要重置的序列名称:

call reset_seq(‘test_seq’);

使用下面的SQL语句查询需要重置的序列:

SELECT  a.sequence_name 序列名称,
a.min_value 序列最小值,
to_char(to_number( a.max_value)) 序列最大值,
a.last_number 序列当前值,
CASE  a.last_number WHEN 1 THEN '--不需要重置;' ELSE
'CALL seq_reset(''' || a.sequence_name || ''');' END 重置序列脚本,
'DROP SEQUENCE ' || a.sequence_name 删除序列脚本,
'RENAME ' || a.sequence_name || ' TO {newname}'  重命名脚本
FROM USER_SEQUENCES a WHERE a.last_number<>1
ORDER BY a.sequence_name ASC;

到此这篇关于oracle重置序列的文章就介绍到这了。希望对大家的学习有所帮助。

简单介绍oracle重置序列的方法相关推荐

  1. oracle序列重置6,oracle 重置序列从指定数字开始的方法详解

    重置oracle序列从指定数字开始 复制代码 代码如下: declare n number(10); v_startnum number(10):=10000001;--从多少开始 v_step nu ...

  2. oracle重置序列从1开始

    oracle重置序列从1开始 oracle版本号为11g create sequence seq_name; --创建一个叫seq_name的序列,默认从1开始,步长为1select seq_name ...

  3. 简单介绍oracle执行计划,Oracle性能优化之oracle中常见的执行计划及其简单解释

    一.访问表执行计划 1.table access full:全表扫描.它会访问表中的每一条记录(读取高水位线以内的每一个数据块). 2.table access by user rowid:输入源ro ...

  4. 简单介绍Vue之vue.$set()方法源码案例

    这篇文章主要介绍了Vue之vue.$set()方法源码案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下 在使用vue开发项目的过程中,经常会遇到这样 ...

  5. 简单介绍六点nginx优化的方法

    这篇文章主要介绍了nginx优化的六点方法,有对nginx优化不太熟悉的同学可以参考下 一.优化Nginx并发量 [root@proxy ~]# ab -n 2000 -c 2000 http://1 ...

  6. C语言中strand() rand() time()函数的简单介绍及获取随机数的方法

    rand()函数简介 功 能 :伪随机数发生器 所属库:stdlib.h 用 法 :需要先调用srand初始化,一般用当前日历时间初始化随机数种子,这样每行代码都可以产生不同的随机数. 函数原型:in ...

  7. 简单介绍js中的confirm()方法的使用

    今天学习了js 中confirm的使用方法 confirm() 方法用于显示一个带有指定消息和 OK 及取消按钮的对话框. 如果用户点击确定按钮,则 confirm() 返回 true.如果点击取消按 ...

  8. 简单介绍一下umask 命令使用方法

    现在越来越多的人使用linux系统,接下来为大家介绍一下linux系统的umask命令 1.命令简介 umask 为 Shell 内建命令,用于设置创建文件时的权限掩码. 权限掩码由 3 个八进制数字 ...

  9. 创建oracle方法,简单的Oracle存储过程的创建方法

    连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Orac ...

最新文章

  1. android 按钮动画效果_【css特效】按钮动画 - 按压效果
  2. 焊接件技术要求怎么写_专硕论文写作要求有高么?具体怎么写?
  3. CRMEB Dockerfile文件
  4. java小票_Java编程打印购物小票实现代码
  5. ora-07445 oracle 9,Oracle ORA-07445 : 出现异常错误: 核心转储(一)
  6. FM算法及FFM算法
  7. Illumina联手IBM Watson Health解读癌症基因谱
  8. filter:alpha(opacity=100,style=1)
  9. Basic INFO: InstallShield 2012安装过程
  10. 微信小程序|小程序自定义底部导航栏
  11. PMP专题练习-整合管理
  12. 摸着石头过河__投石问路
  13. php新浪微博 登录接口文档,php新浪微博登录接口用法实例,php新浪_PHP教程
  14. Hadoop初入门的坑
  15. 软件开发的能力体系及锻炼
  16. 聚焦运营商信创运维,美信时代监控易四大亮点值得一试!
  17. POI使用详解 java 复杂excel导出
  18. 【故障解决】ORA-06502错误解决
  19. 解决Win10中MSCOMM32.ocx没注册问题
  20. 手把手教你搭建一个属于自己的网站

热门文章

  1. 2019年9月全国程序员工资统计,看看你拖后腿了没?
  2. 并发编程专题——第一章(深入理解java内存模型)
  3. Spring基础专题——第五章(Aop代理)
  4. 服务端异步IO配合协程浅析
  5. pandas高级处理-数据离散化
  6. Ubuntu16.04默认安装了Python2.7和3.5 升级python3.5为3.6
  7. 因为失误导致数据丢失
  8. python如何将列表,字典,元组,集合首字母变成大写 以及其他的大小写转换!
  9. 用户管理 之 用户(User)和用户组(Group)配置文件详解
  10. iOS 的组件化开发