数据库存储过程job设置

存储过程Procedure是一组为了完成特定功能的SQL语句集合,可以定时每天没个一段时间执行一次;

可以由下面的基本语句进行创建;

创建完存储过程后在数据库命令窗口执行exec procedurename,就可以执行存储过程了;

若是想要设置存储过程定时运行,可以利用dbms_job.submit添加到执行队列中

然后可以从user_jobs表中看一下在执行的存储过程都有哪些,下图就是该数据库账号下正在运行的job,“what”列中对应添加的存储过程名字,job列为该存储过程独有的ID,"broken"列正常为"N",若为"Y"则表示中断,以后不会执行,若想继续执行,在确定存储过程无误后,可以利用下面的dbms_job.run()语句重新调用执行:

如果还不到该存储过程的执行时间但是想让其立刻执行,可以利用dbms_job.run语句来实现

如果想暂停某个正在运行的job。可以用dbms_job.broken(jobid,True)来暂停,后续想要重启时可以利用dbms_job.run()正常调用:

若要删除某个存储过程的job,可以用dbms_job.remove来移除,后续想要重启时,需要用dbms_job.submit()重新添加job:

若是要是某些存储过程有关联且有先后执行顺序,可以新建一个存储过程来统一调用;

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180929G1P3KR00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券