为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:
【操作系统】:
【CPU】:
【问题描述】:
DBMS_JOB,这个包创建的作业能不能达到每5秒一次更新或者插入表数据呢
需要怎么实现,按文档只能按每分钟进行更新。将参数SYSDATE+1/1440 替换成SYSDATE+5/(2460*60)是无效的
BEGIN
DBMS_JOB.ISUBMIT ( 2, 'TESTZ', '2025-05-07 14:59:21', 'SYSDATE+1/1440', false );
END;
这个参数控制的,默认最小调度间隔60s,可以修改了5试下 sp_set_para_value(1,'TIMER_TRIG_CHECK_INTERVAL',5);
给出一个示例:
TIMER_TRIG_CHECK_INTERVAL 参数修改为 1。
TIMER_TRIG_CHECK_INTERVAL 动态,系统级 默认值60 服务器端检查触发器是否触发的时间间隔,单位为秒,即每过设置的秒数检查触发器是否需要触发,取值范围 1~60。
创建秒级调度作业。
CREATE TABLE TEST_TI
(ID INT IDENTITY(1, 1), CREATETIME TIMESTAMP(6)
);
BEGIN
DBMS_JOB.SUBMIT
(
1, 'INSERT INTO SYSDBA.TEST_TI(CREATETIME) VALUES(NOW);', '2023-06-26 14:23:55', 'sysdate + 1/86400', true, 0
)
;
END;
作业本身支持分钟级别
秒级别可以考虑存储过程结合实现