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;  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM