动态创建分区的存储过程
CREATE OR REPLACE FUNCTION "spiderman"."prc_job_add_partition"()
RETURNS "pg_catalog"."void" AS $BODY$ DECLARE
dateName VARCHAR2(110);
dateEnd VARCHAR2(110);
p_sql VARCHAR2(200);
BEGIN
select concat('DAY' , TO_CHAR(sysdate + 1, 'YYYYMMDD')) into dateName;
select TO_CHAR(sysdate + 2, 'YYYYMMDD') into dateEnd;
dbms_output.put_line ( dateName ) ;
dbms_output.put_line ( dateEnd ) ;
p_sql := 'ALTER TABLE public.motorvehicle_first_shoot ADD PARTITION '||dateName||' VALUES LESS THAN (DATE '''||dateEnd||''' )';
dbms_output.put_line(p_sql);
execute immediate p_sql;
END$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
创建定时任务
call dbms_job.submit('call spiderman.prc_job_add_pa