利用job并行执行Oracle存储过程 _MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1842 | 回复: 0   主题: 利用job并行执行Oracle存储过程         下一篇 
rqsy
注册用户
等级:新兵
经验:66
发帖:8
精华:0
注册:1970-1-1
状态:离线
发送短消息息给rqsy 加好友    发送短消息息给rqsy 发消息
发表于: IP:您无权察看 2015-8-24 14:55:46 | [全部帖] [楼主帖] 楼主

-- 建立测试表

CREATETABLE t (a NUMBER);

-- 建立存储过程

CREATEORREPLACEPROCEDURE p_parallel (p_min IN NUMBER, p_max IN NUMBER)

IS

BEGIN

INSERTINTO t

SELECT TRUNC (DBMS_RANDOM.VALUE (p_min, p_max)) FROM DUAL;

COMMIT;

END p_parallel;

/

-- 建立job

DECLARE

x   NUMBER;

BEGIN

sys.DBMS_JOB.submit (

job         => x,

what        => 'p_parallel(1,20);p_parallel(21,40);p_parallel(41,60);p_parallel(61,80);',

next_date   => TO_DATE ('14-05-2013 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),

interval    => 'trunc(sysdate+1)',

no_parse    => FALSE);

SYS.DBMS_OUTPUT.put_line ('Job Number is: ' || TO_CHAR (x));

COMMIT;

END;

/

-- 测试

TRUNCATETABLE t;

EXEC dbms_job.run(101);

SELECT * FROM t;

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论