oracle数据库定时删除一个星期之前的数据
1、数据库数据太多,查询速度慢,数据库之前的数据不需要保留,可以进行删除,
思路:设置定时删除,写个存储过程,定时任务定时执行
操作步骤:
1、存储过程
create or replace PROCEDURE PROCEDURE_name AS
BEGIN
delete from table_name where date<= to_char(sysdate-7,'yyyy-mm-dd hh24:mi:ss');
Commit;
END PROCEDURE_name ;
2、oracle 定时执行(设置凌晨2点执行)
declare
jobid number;
begin
dbms_job.submit(jobid,'PROCEDURE_name;',TRUNC(sysdate+1)+2/24,'TRUNC(sysdate+1)+2/24');
commit;
dbms_output.put_line(jobid);
end;