在Oracle中,`DBMS_JOB`包用于调度和管理作业。如果你想创建一个作业,使其每分钟执行一次,你可以按照以下步骤操作: 1. 首先,登录到你的Oracle数据库。 2. 使用DBMS_JOB.SUBMIT来创建新的作业。例如,假设你要执行的作业是存储过程`MY_PROC`,你可以这样做: ```sql BEGIN DBMS_JOB.SUBMIT( job => job_number, what => 'BEGIN MY_PROC; END;', next_date => TO_DATE('2023-07-18 00:00:00', 'YYYY-MM-DD HH24:MI:SS'), interval => 'TRUNC(SYSDATE+1) + 0/1440' ); END; / ``` 这里的关键是`interval`参数,它定义了作业的执行间隔。`TRUNC(SYSDATE+1) + 0/1440`表示从下一天开始,每分钟执行一次。 3. 你可以使用以下查询来查看作业的状态和详情: ```sql SELECT job, log_date, last_date, last_sec, this_date, this_sec, next_date, what FROM dba_jobs; ``` 注意:DBMS_JOB在Oracle 10g之后已被DBMS_SCHEDULER替代。如果你使用的是较新的Oracle版本,建议考虑使用DBMS_SCHEDULER来调度作业,因为它提供了更多的功能和灵活性。 [2023-12-29 20:18:27 | AI写代码神器 | 355点数解答]