oracle的一个定时执行任务(job定时执行存储过程)

来源:互联网 发布:易奇八字准不准知乎 编辑:程序博客网 时间:2024/05/21 09:03

做一个小项目时,需要做到登录密码输入三次错误,锁定该账号,然后在第二天凌晨零点的时候,解锁所有锁定账号。这个可以在表中加上一个时间戳字段,然后后期比对时间戳字段来对相应的账号进行解锁,我比较偷懒,就想着用oracle定时执行任务来做一个批量自动处理,把这个交个数据库自己去执行,省下写方法去比对的操作。现将我oracle语句记录如下,方便大家学习以及未来自己忘记时候回头重新回顾。(其中涉及job以及存储过程的内容)


--------创建定时执行任务----创建需要定时执行的存储过程:----功能:修改t_user表和t_administrator表中status不为0的所有记录的status修改为0create or replace procedure update_status_userandadminisbegin  update t_user set status = 0 where status <> 0;  update t_administrator set status = 0 where status <> 0;end;/----创建JOB(待测试)----功能说明:每日凌晨0点定时执行存储过程declare  update_job_status number;  begin  dbms_job.submit(update_job_status,'update_status_userandadmin;',sysdate,'trunc(sysdate)+1');  commit;  end;/

希望这段sql语句对大家有用,也算记录一段我的学习经历,如果有不妥的地方,希望大家指正,谢谢!

原创粉丝点击