批量操作初始化序列初始值
DEMO
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;
本文来自博客园,作者:Iven_lin,转载请注明原文链接:https://www.cnblogs.com/ivenlin/p/17061393.html
浙公网安备 33010602011771号