--*1) 프로시저 생성
CREATE OR REPLACE PROCEDURE pr_reset_seq(seq_name IN VARCHAR2 )
IS
seq_val NUMBER;
BEGIN
-- 다음시퀀스 값을 seq_val 변수에 저장
EXECUTE IMMEDIATE 'select ' || seq_name || '.nextval from dual' INTO seq_val;
-- 현재의 시퀀스에서 저장된 값(seq_val)을 빼준다. 그럼 0으로 초기화 됨.
EXECUTE IMMEDIATE 'alter sequence ' || seq_name || ' increment by -' || seq_val || ' minvalue 0';
-- 0으로 초기화 된 시퀀스 값을 확인
EXECUTE IMMEDIATE 'select ' || seq_name || '.nextval from dual' INTO seq_val;
-- 지금부터는 1씩 증가되도록 시퀀스를 변경함.
EXECUTE IMMEDIATE 'alter sequence ' || seq_name || ' increment by 1 minvalue 0';
END pr_reset_seq;

--*2) 프로시저 호출/사용
-- 이미 생성한 시퀀스 이름 : custno_seq
-- 현재 스퀀스 번호 확인
SELECT custno_seq.nextval FROM dual;
-- 프로시저 호출/사용 (초기화 실행)
EXECUTE pr_reset_seq('custno_seq');

[출처] 오라클 시퀀스 초기화 프로시저|작성자 깨비쌤
https://blog.naver.com/chapjjang/221962357054
오라클 시퀀스 초기화 프로시저
1. 시퀀스 삭제 : DROP SEQUENCE custno_seq; 2. 프로시저를 사용한 초기화 가. 프로시저 정의...
blog.naver.com
'ㄱWORK, ETC' 카테고리의 다른 글
| FRM-92050: 서버에 연결 불가: /forms/lservlet:-1 (0) | 2026.01.14 |
|---|---|
| Oracle Forms > Window Property (0) | 2023.06.15 |
| Steps to Remove the Unneeded List Elements in the Elements List Window Using Forms Builder (Doc ID 2824543.1) (0) | 2023.03.28 |
| 스타벅스 신규음료 사이렌 오더 주문하고 에코별 3(개인컵+2) 받기 고고 (0) | 2022.03.22 |
| 스타벅스 에코별 쌓고 손수건 받기 고고(2022.03.22 ~ 04.11) (0) | 2022.03.22 |