问题描述
嗨,
当作业成功完成时,使用DBMS调度程序创建的程序是否会自动丢弃?
提前谢谢!!
当作业成功完成时,使用DBMS调度程序创建的程序是否会自动丢弃?
提前谢谢!!
专家解答
不,他们不是。程序是数据库中的永久对象,例如
SQL> create or replace 2 procedure my_proc is 3 begin 4 null; 5 end; 6 / Procedure created. SQL> SQL> begin 2 dbms_scheduler.create_program ( 3 program_name => 'MY_PROGRAM', 4 program_type => 'PLSQL_BLOCK', 5 program_action => 'begin my_proc; end;', 6 enabled => true); 7 end; 8 / PL/SQL procedure successfully completed. SQL> SQL> begin 2 DBMS_SCHEDULER.create_job ( 3 job_name => 'MY_JOB', 4 program_name => 'MY_PROGRAM', 5 start_date => SYSTIMESTAMP, 6 enabled => TRUE); 7 end; 8 / PL/SQL procedure successfully completed. SQL> select job_name 2 from dba_scheduler_jobs 3 where owner = user; no rows selected -- ie, it has been run SQL> SQL> select program_name 2 from dba_scheduler_programs 3 where owner = user; PROGRAM_NAME -------------------------------------------------------------------------------------------------------------------------------- MY_PROGRAM 1 row selected. SQL> SQL>
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




