在存储过程利用游标循环执行update语句
2017-03-09 20:28
351 查看
初到公司的第一个工作任务:(用Oracle的job定时对一个值进行累加计算);
虽然比较简单,但是由于已经两年多没有用过存储过程和游标这些了,所以重新温习了下;
记下笔记
========创建存储过程,定义游标循环执行update语句
create or replace procedure JOBTCOUNT as
begin
declare
cursor emp_cur is
select T_COUNT from JOB_T_BUSINESS_COUNT for update ;
begin
for emp_row in emp_cur
loop
update JOB_T_BUSINESS_COUNT set T_COUNT=T_COUNT+0.5 where current of emp_cur;
end loop;
commit;
end;
end;
==========创建job任务每秒执行一次
SQL> variable jobbusinesscount number;
SQL> begin
2 dbms_job.submit(:jobbusinesscount,'JOBTCOUNT;',sysdate,'sysdate+1/86400');
3 end;
4 /
========启动job任务
SQL> begin
2 dbms_job.run(:jobbusinesscount);
3 end;
4 /
========删除job任务
SQL> begin
2 dbms_job.remove(:jobbusinesscount);
3 end;
4 /
===查询job
select * from dba_jobs
=======启动job(登陆用户为创建该job的属主)
exec DBMS_JOB.broken(22,false);
==停止
exec DBMS_JOB.broken(22,true);
虽然比较简单,但是由于已经两年多没有用过存储过程和游标这些了,所以重新温习了下;
记下笔记
========创建存储过程,定义游标循环执行update语句
create or replace procedure JOBTCOUNT as
begin
declare
cursor emp_cur is
select T_COUNT from JOB_T_BUSINESS_COUNT for update ;
begin
for emp_row in emp_cur
loop
update JOB_T_BUSINESS_COUNT set T_COUNT=T_COUNT+0.5 where current of emp_cur;
end loop;
commit;
end;
end;
==========创建job任务每秒执行一次
SQL> variable jobbusinesscount number;
SQL> begin
2 dbms_job.submit(:jobbusinesscount,'JOBTCOUNT;',sysdate,'sysdate+1/86400');
3 end;
4 /
========启动job任务
SQL> begin
2 dbms_job.run(:jobbusinesscount);
3 end;
4 /
========删除job任务
SQL> begin
2 dbms_job.remove(:jobbusinesscount);
3 end;
4 /
===查询job
select * from dba_jobs
=======启动job(登陆用户为创建该job的属主)
exec DBMS_JOB.broken(22,false);
==停止
exec DBMS_JOB.broken(22,true);
相关文章推荐
- 在存储过程利用游标循环执行update语句
- oracle 存储过程循环执行update语句
- mysql 存储过程中利用游标循环结果集
- 在存储过程中执行3种oracle循环语句
- 存储过程,触发器,游标,if语句,三种循环
- 在存储过程中执行3种oracle循环语句
- oracle 执行包含update语句的存储过程并获取结果记录
- 在存储过程中执行3种oracle循环语句
- 在存储过程中执行oracle循环语句
- Oracle存储过程执行update语句不报错不生效问题
- 在存储过程中执行3种oracle循环语句
- oracle 执行包含update语句的存储过程并获取结果记录
- 利用游标在存储过程中做循环数据处理
- oracle 执行包含update语句的存储过程并获取结果记录
- 利用SQL语句创建、修改、执行、删除存储过程
- 存储过程里面执行SQL语句
- 在SQL SERVER 2005存储过程中,使用循环语句
- 利用游标循环进行更新插入的SQL事务语句 ~
- 利用游标循环进行更新插入的SQL事务语句
- 一个蛮复杂的存储过程,游标,循环,临时表