ORACLE的job相关


ORACLE的job相关


一。查看数据库job

--查询全部job(需要管理员权限)
select * from dba_jobs;

--查询当前用户下的job
select * from user_jobs;

--按照job执行的内容关键字查询
select * from dba_jobs WHERE WHAT LIKE '%SP_CALL_PROCEDURE_INTER%'

--查看存储过程内容
select text from all_source@db207 where owner='ECC_CMP' and name=upper('SP_CALL_PROCEDURE_INTER');



二。创建、运行、中断、删除job

--创建job
   declare      
           job1 number;
   begin
           dbms_job.submit(job1, 'SP_CALL_PROCEDURE_INTER_TEST;',sysdate, 'SYSDATE+5/(24*60)');    
   end;
   
   注意:存储过程名中没有用户名表示执行当前用户下的存储过程,否则需要有执行相关存储过程的权限(赋予权限)
   

--运行job
 begin dbms_job.run(1936); end;
      
--中断job      
 begin DBMS_JOB.BROKEN(1936, TRUE); end;
 begin DBMS_JOB.BROKEN(1936, FALSE); end;
 
--删除job
 begin  dbms_job.remove(1936); end;   


三。job调用其他用户的存储过程

--A用户的job想调用B用户下的存储过程P,B账户下授权P权限给B
 grant all on P to A
 备注:这样P中调用其他存储过程或B下的表都会有权限,相当于级联向下赋予存储过程P相关联需要的所有权限。
 
--A用户创建的job中调用B的存储过程需要加上用户名
   declare      
           job1 number;
   begin
           dbms_job.submit(job1, 'B.P;',sysdate, 'SYSDATE+5/(24*60)');    
   end;
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值