千家信息网

存储过程+job 定时执行固定的SQL语句

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,做报表时,需要读取大量数据和进行复杂的计算,往往比较耗时,所以一般会将结果存放在一张结果表中,报表直接读取结果表,这样就会很快了。此时,为了更新结果表,获得最新数据,就需要定时执行一些SQL语句,此时
千家信息网最后更新 2026年11月01日存储过程+job 定时执行固定的SQL语句

做报表时,需要读取大量数据和进行复杂的计算,往往比较耗时,所以一般会将结果存放在一张结果表中,报表直接读取结果表,这样就会很快了。此时,为了更新结果表,获得最新数据,就需要定时执行一些SQL语句,此时可以采用:存储过程+job的方式来达到目的,具体步骤如下
创建存储过程:

create or replace procedure datawarn.P_TEST is

begin

delete from test_table;
insert test_table select * from table1; --sql块,即你要执行的sql语句

commit; --sql块

end;


执行存储过程(手动调用一次存储过程):

EXEC 存储过程名;



创建JOB:

begin

dbms_scheduler.create_job (

job_name => 'J_TEST', --JOB名称

job_type => 'STORED_PROCEDURE',

job_action => 'P_TEST', --存储过程名

start_date => sysdate,

repeat_interval => 'FREQ=MINUTELY; INTERVAL=10', -- 十分钟一次

comments => 'JOB说明'

);

end;

ps:创建job的时候要小心一点,仔细检查,不要写错信息,如果报错,再次创建会导致创建不成功,可以换个job名称尝试一下

--启动

begin

dbms_scheduler.enable('J_TEST');

end;


执行

begin

dbms_scheduler.run_job(job_name => 'J_TEST',force => TRUE); -- true代表同步执行

end;

停止

dbms_scheduler.stop_job(job_name => 'J_TEST',force => TRUE);

--DI JOB查询

select * from tsc_jobstatus

过程 存储 结果 语句 名称 报表 数据 复杂 成功 代表 信息 再次 很快 手动 方式 时候 果报 步骤 目的 同步 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技行业发展 科技平台互联网 万易互联网科技 期待互联网科技 沃里互联网科技 互联网高科技股票 互联网科技公司名称 太原新华互联网科技学校怎么样 重庆威客帮互联网科技 武汉健翔互联网络科技有限公司 互联网5g黑科技有哪些 乌鲁木齐新华智原互联网科技学校 互联网科技和法律行业 玉溪新华互联网科技好不好 互联网科技如何创业 互联网科技圈年度人物 江苏互联网智能科技产品出厂价 广东猫王互联网科技有限公司电话 株洲百竞科技的互联网营销顾问 武汉亿视互联网科技有限公司 深圳九邦互联网科技有限公司 A股互联网金融科技公司 深圳互联网络科技有限公司 宜安科技 互联网金融 西安互联网科技公司 海南购全球互联网科技 链环科技传统企业怎么转型互联网 国大互联网教育科技有限公司薪资 南通创西澳互联网科技有限公司 三亚科技创新互联网基地
0