我想理解一条dbms_job.submit语句
dbms_job.submit(jobno, 'xxxsome_pl_sql_statement',next_date,interval);next_date评估为Last_Day(Sysdate) -30-4月22日
区间值为Last_Day(Add_Months(Sysdate,1))
今天的会议日期是13-4月22日。
1.如何将5月31日至22日的时间理解为间隔?我是否应该将间隔理解为Last_Day(Sysdate)和Last_Day(Add_Months(Sysdate,1))之间的时间间隔(大约是一个月)?
2.运行作业的下一个日期已经设定,为什么我们需要再次设置间隔?
发布于 2022-04-13 23:45:29
NEXT_DATE是下一次执行作业的时候。INTERVAL是一个varchar2格式的SQL公式,用于计算后续的执行,而不是日期本身,应该用单引号括起来,比如PL/SQL语句。
dbms_job.submit(jobno, 'some_pl_sql_statement',Last_Day(Sysdate),'Last_Day(Add_Months(Sysdate,1))');LAST_DAY和ADD_MONTHS是SQL函数。
DBMS_JOB.SUBMIT(
job OUT BINARY_INTEGER,
what IN VARCHAR2,
next_date IN DATE DEFAULT SYSDATE,
interval IN VARCHAR2 DEFAULT 'NULL',
no_parse IN BOOLEAN DEFAULT FALSE,
instance IN BINARY_INTEGER DEFAULT ANY_INSTANCE,
force IN BOOLEAN DEFAULT FALSE);
dbms_job.submit(
what=>'some_plsql_statement;',
next_date=>Last_Day(Sysdate), -- last day of this month
interval=>'Last_Day(Add_Months(Sysdate,1))'); -- Last day of the next month after each executionhttps://stackoverflow.com/questions/71863295
复制相似问题