Oracle 9i Job Queues×ܽá
1¡¢OracleÓëJobÓйصIJÙ×÷¶¼ÊÇͨ¹ýDBMS_JOBÀ´Íê³ÉµÄ£»
2¡¢ºǫ́½ø³ÌCJQ0(Coordinate Job
Queue)¶¨ÆÚ²éѯdba_views,²¢½«ÕâЩjob°´Ê±¼ä½øÐÐÅÅÐò¡£µ±·¢ÏÖÒ»¸öJob¿ÉÒÔÔËÐÐÁË£¬¾Í×Ô¶¯²úÉúÒ»¸öJob
Queue½ø³Ì(Jnnn)À´Ö´ÐÐÕâ¸öJob.
3¡¢Í¨¹ýÊý¾Ý¿âµÄ²ÎÊýJOB_QUEUE_PROCESSESÀ´¿ØÖÆ£º1£©ÊÇ·ñÆô¶¯CJQ0 2£©Job
Queue½ø³ÌµÄ¸öÊý£¨¼´¿ÉͬÊÂÖ´ÐеÄJobµÄ×î´ó¸öÊý£©¡£JOB_QUEUE_PROCESSESΪ0£¬ÔòCJQ0²»Æô¶¯£¬ËùÓÐJob¾ù²»»áÈçÆÚÖ´ÐС£
JOB_QUEUE_PROCESSESΪΪ20£¬±íÃ÷×î´ó20¸öJob¿ÉÒÔͬʱÔËÐÐ.
JOB_QUEUE_PROCESSES²ÎÊýÊÇdynamicµÄ£¬¿É¶¯Ì¬Ð޸ģºALTER SYSTEM SET
JOB_QUEUE_PROCESSES = 20;
4¡¢´´½¨Ò»¸öJOB:
VARIABLE jobno NUMBER
BEGIN
DBMS_JOB.SUBMIT(:jobno,
'DBMS_DDL.ANALYZE_OBJECT(''TABLE'',
''HR'',
''EMPLOYEES'',
''ESTIMATE'', NULL, 50);',
SYSDATE, 'SYSDATE +
1');
COMMIT;
END;
/
PRINT jobno
DBMS_JOB.SUBMIT
µÄ¸ñʽΪ£º
SUBMIT(JOBNO,WHAT,NEXT_DATE,INTERVAL,NO_PARSE)£¬ÆäÖУº
jobnoÊÇ
Ò»¸öOUT²ÎÊý¡£µ±SUBMITÖ´ÐÐÍê±Ï£¬jobno»á´ø³öORACLE·ÖÅäµÄjobºÅÂë¡£Õâ¸öjobºÅÂë×÷ΪÕâ¸öJOBµÄ±êʶ
WHATÊÇÕâ
¸öJOBÒª×öµÄÊÂÇé¡£ÓÃ''ÒýÆðÀ´µÄÈκÎPL/SQLÓï¾ä
NEXT_DATEÊÇÏ´ÎÒªÖ´ÐÐÕâ¸öJOBµÄʱ¼ä¡£Ä¬ÈÏΪSYSDATE
INTERVAL
ÊǼä¸ô£¬¾ö¶¨ÁËÕâ¸öÈÎÎñÏ´ÎÔËÐеÄʱ¼ä¡£Ã¿´ÎJOBÔËÐÐʱ£¬¶¼»á¼ÆËãÕâ¸öINTERVAL×ֶΣ¬²¢ÔÚÖ´ÐÐÍê±Ïºó½«Õâ¸öÖµ·Åµ½NEXT_DATE×Ö¶ÎÖÐÈ¥£¬
×÷ΪÏ´ÎÖ´ÐеÄʱ¼ä£»
NO_PARSE£º¾ö¶¨WHAT²¿·ÖµÄ¶«Î÷ʵÔÚSUBMITµÄʱºò½øÐнâÎö£¨FALSE£©»¹ÊǵÚÒ»´ÎÖ´ÐеÄʱºò½âÎö
(TRUE)¡£
5¡¢³£¼ûµÄWHAT£º
'myproc(''10-JAN-99'', next_date,
broken);'
'scott.emppackage.give_raise(''JFEE'', 3000.00);'
'dbms_job.remove(job);'
6¡¢³£¼ûµÄINTERVAL£º
'SYSDATE + 7' ÿÆßÌì
'SYSDATE + 1/48' ÿ°ëСʱ
'NEXT_DAY(TRUNC(SYSDATE),
''MONDAY'') + 15/24' ÿÖÜÒ»µÄÏÂÎçÈýµã
'NEXT_DAY(ADD_MONTHS(TRUNC(SYSDATE,
''Q''), 3), ''THURSDAY'')' ÿ¼¾¶ÈµÄµÚ1¸öÐÇÆÚËÄ
7¡¢É¾³ýÒ»¸öJOB
BEGIN
Ïà¹ØÎĵµ£º
¾¹ý³¤Ê±¼äѧϰOracle£¬Äã¿ÉÄÜ»áÓöµ½Oracle tnsÅäÖÃÎÊÌ⣬ÕâÀォ½éÉÜOracle tnsÅäÖÃÎÊÌâµÄ½â¾ö·½·¨¡£×î½üæ×Ű²×°OracleÊý¾Ý¿â£¬±¾À´Í¦¼òµ¥µÄ£¬¿ÉÀÏÊdzöÏÖÎÊÌ⣬×îºó×Ô¼ºÔÚÍøÉÏÕûÀíÁËһЩtns´íÎó½â¾ö·½·¨£¬Ï£Íû¶Ô³õѧÕßÓÐÒæ¡£
³£¼ûÎÊÌâ:
1¡¢ORA-12541:tns:ûÓмàÌýÆ÷£º
ÏÔ¶øÒ×¼û£¬·þÎñÆ÷¶ËµÄ¼àÌýÆ÷ûÓÐÆô¶¯£¬ÁíÍâ¼ì²é¿Í» ......
OracleÍⲿÉí·ÝÈÏÖ¤Ñо¿
ÃÜÂëÎļþÈÏÖ¤ ²Ù×÷ϵͳÈÏÖ¤ remote_login_passwordfile SQLNET.AUTHENTICATION_SERVICES &nb ......
oracle Êý¾ÝÀàÐÍÏê½â---ÈÕÆÚÐÍ
oracleÊý¾ÝÀàÐÍ¿´ÆðÀ´·Ç³£¼òµ¥£¬µ«ÓÃÆðÀ´»á·¢ÏÖÓÐÐí¶à֪ʶµã£¬±¾ÎÄÊÇÎÒ¶ÔORACLEÈÕÆÚÊý¾ÝÀàÐ͵ÄһЩÕûÀí£¬¶¼ÊÇ¿ª·¢ÈëÃÅ×ÊÁÏ£¬Óë´ó¼Ò·ÖÏí£º
×¢£ºÓÉÓÚINTERVAL¼°TIME ZONEʵ¼ÊÓõñȽÏÉÙ£¬ËùÒÔ±¾ÎÄÄÚÈÝÎ´Éæ¼°ÕâÁ½¸ö·½Ãæ¡£
1¡¢³£ÓÃÈÕÆÚÐÍÊý¾ÝÀàÐÍ
1.1¡¢DATE
......
»ù±¾µÄSql±àдעÒâÊÂÏî
¾¡Á¿ÉÙÓÃIN²Ù×÷·û£¬»ù±¾ÉÏËùÓеÄIN²Ù×÷·û¶¼¿ÉÒÔÓÃEXISTS´úÌæ¡£
²»ÓÃNOT IN²Ù×÷·û£¬¿ÉÒÔÓÃNOT EXISTS»òÕßÍâÁ¬½Ó+Ìæ´ú¡£
OracleÔÚÖ´ÐÐIN×Ó²éѯʱ£¬Ê×ÏÈÖ´ÐÐ×Ó²éѯ£¬½«²éѯ½á¹û·ÅÈëÁÙʱ±íÔÙÖ´ÐÐÖ÷²éѯ¡£¶øEXISTÔòÊÇÊ×Ïȼì²éÖ÷²éѯ£¬È»ºóÔËÐÐ×Ó²éѯֱµ½ÕÒµ½
µÚÒ»¸öÆ¥ÅäÏî¡£NOT EXISTS±ÈNOT INЧÂÊÉ ......