oracle存储过程
第一步:建立相关数据表
第二步:创建存储过程
代码如下:
create or replace procedure SET_MAGICCUBE_NEWS_LOOKS_NUMS is
–声明随机数变量
PARAM_RUNDOM_NUM NUMBER(4);
–定义游标 查询当天审核通过的文章ID列表
CURSOR ARTICLE_IDS IS
SELECT ID
FROM MAGICCUBE_NEWS_NEWS
WHERE publishdate>sysdate-3
AND status = ‘published’;
begin
–循环游标
FOR ARTICLE IN ARTICLE_IDS LOOP
–给随机数变量赋值
SELECT ROUND(DBMS_RANDOM.VALUE(10,20)) INTO PARAM_RUNDOM_NUM FROM DUAL;
INSERT INTO MAGICCUBE_NEWS_LOOKS (ID, PUBLISHDATE, LOOKS,PAGEID)
VALUES (sys_guid(), sysdate,PARAM_RUNDOM_NUM,ARTICLE.ID);
COMMIT;
END LOOP;
end SET_MAGICCUBE_NEWS_LOOKS_NUMS;
第三步:创建定时任务
代码如下:
declare
my_job number;
begin
dbms_job.submit(my_job, ‘SET_MAGICCUBE_NEWS_LOOKS_NUMS;’, sysdate, ‘sysdate+1/24’);
end;