oracle sequence语句重置方详解
发布时间:2021-12-08 13:35:43 所属栏目:教程 来源:互联网
导读:在开发过程中,可能会用到oracle sequence语句,本文以oracle sequence语句如何重置进行介绍,需要的朋友可以参考下 Oracle重置sequence语句1 Sql代码 复制代码 代码如下: DECLARE n NUMBER(10 ); tsql VARCHAR2(100 ); p_seqName varchar2(20 ); BEGIN p_seqN
在开发过程中,可能会用到oracle sequence语句,本文以oracle sequence语句如何重置进行介绍,需要的朋友可以参考下 Oracle重置sequence语句1 Sql代码 复制代码 代码如下: DECLARE n NUMBER(10 ); tsql VARCHAR2(100 ); p_seqName varchar2(20 ); BEGIN p_seqName := 'SEQ_RUN_ID'; EXECUTE IMMEDIATE 'SELECT ' || p_seqName || '.NEXTVAL FROM dual ' INTO n; n := - (n - 1); tsql := 'alter sequence '|| p_seqName ||' increment by ' || n; EXECUTE IMMEDIATE tsql; EXECUTE IMMEDIATE 'SELECT ' || p_seqName || '.NEXTVAL FROM dual ' INTO n; tsql := 'alter sequence '|| p_seqName ||' increment by 1' ; EXECUTE IMMEDIATE tsql; EXCEPTION WHEN OTHERS THEN dbms_output.put_line( SQLERRM); END; Oracle重置sequence语句2 Sql代码 复制代码 代码如下: CREATE OR REPLACE PROCEDURE RESET_SEQUENCE(p_sSeqName IN VARCHAR2) IS n NUMBER(10 ); tsql VARCHAR2(100 ); BEGIN EXECUTE IMMEDIATE 'SELECT ' || p_sSeqName || '.NEXTVAL FROM dual ' INTO n; n := - (n - 1); tsql := 'alter sequence ' || p_sSeqName || ' increment by ' || n; EXECUTE IMMEDIATE tsql; EXECUTE IMMEDIATE 'SELECT ' || p_sSeqName || '.NEXTVAL FROM dual ' INTO n; tsql := 'alter sequence ' || p_sSeqName || ' increment by 1' ; EXECUTE IMMEDIATE tsql; EXCEPTION WHEN OTHERS THEN NULL; END RESET_SEQUENCE; ![]() (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |