国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài)

2024-07-21 02:32:47
字體:
供稿:網(wǎng)友

  Tom在EXPert One on One Oracle中,介紹了如何利用JOB的特性,來控制JOB運(yùn)行的下次執(zhí)行時(shí)間。在以前的文章中,我也給出過修改NEXT_DATE的具體的例子:http://yangtingkun.itpub.net/post/468/56931     Tom給出的運(yùn)行JOB的PL/SQL代碼為:利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) DECLARE利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) job BINARY_INTEGER := :job;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) next_date DATE := :mydate;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) broken BOOLEAN := FALSE;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) BEGIN利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) WHAT利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) :mydate := next_date;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) IF broken THEN :b := 1; ELSE :b :=0; END IF;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) END;    并說明了如何使用NEXT_DATE作為存儲(chǔ)過程的輸出參數(shù),來指定下次JOB的下次運(yùn)行時(shí)間。    第一次看到這里的時(shí)候,一方面是感嘆這種內(nèi)部的東西,一般人是無法得到的,只有Tom這種內(nèi)部人士才能得到;另一方面是佩服Tom的功力,說實(shí)話,即使是把代碼給我,我也想不出這么巧妙的方法。    這次重讀這部分內(nèi)容,有了一點(diǎn)新的想法,對(duì)于BROKEN變量,是否也可以做點(diǎn)什么?    采用和上面類似的方法,可以控制JOB的行為,使JOB成功運(yùn)行一次后,就自動(dòng)停止不在執(zhí)行。由于普通的一次性JOB,在運(yùn)行后就從JOB視圖中消失了,假如希望留下運(yùn)行信息,則必須使用日志表,十分的麻煩。而采用下面的方法處理一次性JOB,可以方便將JOB的運(yùn)行信息保留下來:利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> CONN /@YANGTK AS SYSDBA利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 已連接。利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> GRANT EXECUTE ON DBMS_LOCK TO YANGTK;
    授權(quán)成功。利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> CONN YANGTK/YANGTK@YANGTK利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 已連接。利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> CREATE OR REPLACE PROCEDURE P_TEST (P_BROKEN OUT BOOLEAN) AS利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 2 BEGIN利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 3 P_BROKEN := TRUE;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 4 DBMS_LOCK.SLEEP(5);利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 5 END;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 6 /     過程已創(chuàng)建。利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> DECLARE利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 2 V_JOB NUMBER;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 3 BEGIN利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 4 DBMS_JOB.SUBMIT(V_JOB, 'P_TEST(BROKEN);', SYSDATE, 'SYSDATE + 1/1440');利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 5 COMMIT;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 6 END;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 7 /     PL/SQL 過程已成功完成。利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> COL WHAT FORMAT A30利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> SELECT JOB, WHAT, TOTAL_TIME, BROKEN, FAILURES FROM USER_JOBS;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài)利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) JOB WHAT TOTAL_TIME B FAILURES利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) ---------- ------------------------------ ---------- - ----------利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 6 P_TEST(BROKEN); 3 N利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài)利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) SQL> SELECT JOB, WHAT, TOTAL_TIME, BROKEN, FAILURES FROM USER_JOBS;利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài)利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) JOB WHAT TOTAL_TIME B FAILURES利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) ---------- ------------------------------ ---------- - ----------利用存儲(chǔ)過程參數(shù)控制JOB的運(yùn)行狀態(tài) 6 P_TEST(BROKEN); 5 Y 0
    采用這種方法,運(yùn)行一次后,JOB不再運(yùn)行,但是JOB信息并沒有丟失,仍然保留在USER_JOBS視圖中。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 名山县| 沈阳市| 扶沟县| 饶平县| 修水县| 大埔区| 徐水县| 峨边| 阜新| 伊宁市| 南江县| 连平县| 罗定市| 天津市| 防城港市| 商丘市| 繁昌县| 龙口市| 柏乡县| 西峡县| 余庆县| 额尔古纳市| 时尚| 慈利县| 微山县| 克山县| 双峰县| 石城县| 娄烦县| 贵阳市| 沁阳市| 淮阳县| 九龙城区| 巫溪县| 保定市| 磴口县| 保定市| 聂荣县| 木里| 黑水县| 九龙坡区|