首页 > 其他分享 > 批量操作初始化序列初始值

批量操作初始化序列初始值

时间:2023-01-19 14:00:22浏览次数:39  
标签:初始化 maxId SEQ 批量 tsiTemp 初始值 dual ID select


DECLARE
TYPE tsi IS RECORD(
t VARCHAR2(100) ,
s VARCHAR2(100),
i varchar2(100));
tsiTemp tsi;
maxId varchar2(20);
BEGIN
for tsiTemp in (
select 'T_xxxx_CONFIG'as t,'SEQ_xxxxx_ID' as s,'xxxx_ID' as i from dual
union
select 'T_ttttt_INFO'as t,'SEQ_ttttt_ID' as s,'tttt_ID' as i from dual
union
select 'T_ddddd_LOG' as t,'SEQ_dddddd_ID' as s,'dddd_ID' as i from dual
)
loop
execute immediate 'select nvl(max('||tsiTemp.i||'+1),1) from '||tsiTemp.t into maxId;
execute immediate 'drop sequence '||tsiTemp.s;
execute immediate 'create sequence '||tsiTemp.s
|| ' minvalue '||maxId
|| ' maxvalue 999999999999999999999999999 '
|| ' start with '||maxId
|| ' increment by 1'
||' cache 20'
||' order';
end loop;
END;

标签:初始化,maxId,SEQ,批量,tsiTemp,初始值,dual,ID,select
From: https://www.cnblogs.com/ivenlin/p/17061393.html

相关文章