将同时写的一个自动添加分区表的方法粘了过来,一起分享
1、新建一个存储过程去添加分区表分区
create or replace procedureCREATE_BILL_LOGOUT_DEF_PARTION is
today varchar2(20);
partionsql varchar2(300);
tomorrow varchar2(20);
begin
today := to_char(sysdate,'yyyymmdd');
tomorrow := to_char(sysdate+1,'yyyy-mm-dd');
partionsql := 'alter table TLBB.BILL_LOGOUT_CN splitpartition BILL_LOGOUT_DEFAULT at ( TO_DATE('''||tomorrow||''',''yyyy-mm-dd''))INTO (PARTITION BILL_LOGOUT_'||today||' , PARTITION BILL_LOGOUT_DEFAULT)';
dbms_output.put_line(partionsql);
execute immediate partionsql;
end;
/
2、新建scheduler job
exec dbms_scheduler.create_job(job_name=>'ADD_BILL_LOGOUT_CN_PARTION',job_type=>'stored_procedure',job_action=>'CREATE_BILL_LOGOUT_DEF_PARTION',start_date => sysdate,repeat_interval=>'FREQ=DAILY;BYHOUR=9;BYMINUTE=30;BYSECOND=0', comments => 'add partaion for table BILL_LOGOUT_CN');
这样就实现了自动添加分区表分区的目的。