修改sequenc number

简介: create or replace procedure CHANGE_SEQ_NUMBER( PI_SEQ_OWNER VARCHAR2 , PI_SEQNAME VARCHAR2 , PI_LAST_NUMBER NUMBER) IS V_LastValue integer; V_incr...

create or replace procedure CHANGE_SEQ_NUMBER( PI_SEQ_OWNER VARCHAR2 , PI_SEQNAME VARCHAR2 , PI_LAST_NUMBER NUMBER) IS
V_LastValue integer;
V_increment_by integer;
V_cache_size integer;
V_last_number integer;
V_SQL VARCHAR2(2000) ;
BEGIN
SELECT DP.increment_by , DP.cache_size , DP.last_number
INTO V_increment_by , V_cache_size , V_last_number
FROM dba_sequences DP WHERE DP.sequence_owner = PI_SEQ_OWNER AND DP.sequence_name =PI_SEQNAME ;
IF PI_LAST_NUMBER > V_last_number THEN
V_SQL:= ' alter sequence '||PI_SEQ_OWNER||'.'||PI_SEQNAME||' increment by ' ||( PI_LAST_NUMBER-V_last_number )||' nocache ';
EXECUTE IMMEDIATE V_SQL ;

V_SQL:= ' select '||PI_SEQ_OWNER||'.'||PI_SEQNAME||'.nextval from dual ' ;
EXECUTE IMMEDIATE V_SQL INTO V_LastValue ;

V_SQL:= ' alter sequence '||PI_SEQ_OWNER||'.'||PI_SEQNAME||' increment by 1 nocache ';
EXECUTE IMMEDIATE V_SQL ;

LOOP

 V_SQL:= ' select '||PI_SEQ_OWNER||'.'||PI_SEQNAME||'.currval  from dual ' ;
 EXECUTE IMMEDIATE V_SQL INTO V_LastValue ;
 
 exit when V_LastValue >= PI_LAST_NUMBER - 1;
 
 V_SQL:= ' select '||PI_SEQ_OWNER||'.'||PI_SEQNAME||'.nextval  from dual ' ;
 EXECUTE IMMEDIATE V_SQL INTO V_LastValue ;

END LOOP ;

IF V_cache_size >1 THEN
 V_SQL:= ' alter sequence '||PI_SEQ_OWNER||'.'||PI_SEQNAME||' increment by ' ||V_increment_by||' cache '||V_cache_size ;
ELSE
 V_SQL:= ' alter sequence '||PI_SEQ_OWNER||'.'||PI_SEQNAME||' increment by ' ||V_increment_by||' nocache ' ;
END IF;
 EXECUTE IMMEDIATE V_SQL  ;

END IF ;
END;

目录
相关文章
|
开发者
文件蜈蚣,一款免费开源比迅雷还良心的全协议下载神器
说到下载工具,相信很多人都在使用大名鼎鼎的 IDM 下载神器,优点众多:支持多线程下载,支持网页的视频嗅探下载,不过它支持的协议比较少,比如不支持 BT、ed2k、thunder 下载等;
1533 0
文件蜈蚣,一款免费开源比迅雷还良心的全协议下载神器
|
监控 前端开发 测试技术
前端研发流程的深入解析:从构思到交付
前端研发流程的深入解析:从构思到交付
701 0
|
5月前
|
人工智能 运维 编译器
|
6月前
|
开发工具 git C++
Git 2.54发布:重写历史不再“伤筋动骨“,钩子终于能“云同步“了!
Git 2.54 发布:聚焦日常体验升级!新增 `git history`(轻量重写历史)、配置化 hooks(全局/局部灵活管理)、几何压缩默认启用。增强 `add -p`、支持 Unicode 别名、HTTP 429 自动重试等。不炫技,只解痛——让工具更懂你。
351 1
|
人工智能 开发工具 开发者
单提交智能评审上线!用云效精准定位复杂 MR 代码问题
随着代码评审进入智能化时代,AI 已成为提升 Code Review 效率与代码质量的重要助手。但当一次合并请求(MR)包含大量提交或巨量变更时,把所有 diff 一次性交给 AI 审查,容易导致判断失真、遗漏细节或误解改动意图。为此,云效 Codeup 推出“单提交评审”模式,把每个 commit 作为独立评审单元,有针对性地结合 commit message 给出意见,有效解决大 MR 场景下的智能评审痛点。
|
5月前
|
人工智能 机器人 网络安全
阿里云计算巢 Hermes Agent / OpenClaw(原 Moltbot/Clawdbot)社区版部署配置钉钉机器人教程
OpenClaw(原Moltbot、Clawdbot)是一款现代化机器人流程自动化(RPA)平台,支持自动化重复性桌面任务,具备直观的用户界面与强大的自动化功能,无需编程经验也能创建、管理和执行自动化任务。同时,它提供丰富的集成接口,可与其他系统和服务无缝协作。本文基于阿里云计算巢服务,详细拆解OpenClaw社区版的部署流程,以及钉钉机器人的配置与对接步骤,全程无营销词汇,严格遵循原文档逻辑与操作,确保不改变原意。
501 0
|
前端开发 Java 测试技术
PHP的现代复兴:从脚本语言到企业级服务端引擎的演进之路-优雅草卓伊凡
PHP的现代复兴:从脚本语言到企业级服务端引擎的演进之路-优雅草卓伊凡
322 6
|
前端开发 JavaScript API
React 与 React Native 的主要区别
【8月更文挑战第7天】 React 与 React Native 的主要区别
4495 3