oracle存储过程每天重置序列问题
CREATE OR REPLACE PROCEDURE p_reset_seq IS
/*
重置序列ID
*/
PN_ID NUMBER;
n number(10);
tsql varchar2(100);
BEGIN
--重置序列1
select seq_finance_income_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_income_id increment by' || (n);
execute immediate tsql;
select seq_finance_income_id.nextval into n from dual;
tsql:='alter sequence seq_finance_income_id increment by 1';//这里运行有时会报错是什么问题?
execute immediate tsql;
commit;
--重置序列2
select seq_finance_settlement_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_settlement_id increment by' || (n);
execute immediate tsql;
select seq_finance_settlement_id.nextval into n from dual;
tsql:='alter sequence seq_finance_settlement_id increment by 1';
execute immediate tsql;
commit;
END p_reset_seq;
/*
重置序列ID
*/
PN_ID NUMBER;
n number(10);
tsql varchar2(100);
BEGIN
--重置序列1
select seq_finance_income_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_income_id increment by' || (n);
execute immediate tsql;
select seq_finance_income_id.nextval into n from dual;
tsql:='alter sequence seq_finance_income_id increment by 1';//这里运行有时会报错是什么问题?
execute immediate tsql;
commit;
--重置序列2
select seq_finance_settlement_id.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence seq_finance_settlement_id increment by' || (n);
execute immediate tsql;
select seq_finance_settlement_id.nextval into n from dual;
tsql:='alter sequence seq_finance_settlement_id increment by 1';
execute immediate tsql;
commit;
END p_reset_seq;
...全文
相关推荐
oracle 不用新建序列 重置序列(从1开始增长)
oracle 中不用新建序列是实现重置序列(从1开始增长)
oracle 重置序列从指定数字开始的方法详解
重置oracle序列从指定数字开始 代码如下: declare n number(10); v_startnum number(10):=10000001;–从多少开始 v_step number(10):=1;–步进 tsql varchar2(200); v_seqname varchar2(200):=’MIP_JF_SEQUENCE’;–序列名 begin execute immediate ‘select ‘||v_seqname||’.nextval from dual’ into n; n:=v_startnum-n-v_step;–从10000001开始 tsql:=’alt
批量修改Oracle序列值的存储过程
NULL 博文链接:https://zzx0421.iteye.com/blog/335955
oracle存储过程各种写法
此文档对oracle存储过程做了详细讲解,游标用法 变量定义,触发器,序列,DML DCL DDL
Oracle删除当前用户下的所有表、视图、序列、函数、存储过程、包
Oracle删除当前用户下的所有表、视图、序列、函数、存储过程、包 Oracle删除当前用户下的所有表、视图、序列、函数、存储过程、包



