ORACLE jobʹÓ÷½·¨
EXP/IMP×¢Ò⣺´ÓÈ«¿âÂß¼±¸·Ý°´Óû§µ¼Èëʱ£¬OracleûÓе¼ÈëJOB£¬²»ÖªµÀÕâ¸öÊÇOracleµÄbug£¬»¹ÊǹÊÒâÕâÑùʵÏֵġ£Õâ¸öÎÊÌâÔÚµ¼ÈëµÄÓû§ÃûºÍµ¼³öµÄÓû§Ãû²»Í¬Ê±³öÏÖ£¬Èç¹ûµ¼ÈëµÄÓû§ÃûºÍµ¼³öµÄÓû§ÃûÒ»Ö£¬Ôò²»»á³öÏÖÕâ¸öÎÊÌâ¡£»³ÒÉÊÇOracleµ÷ÓÃDBMS_IJOB°üʱ³öÏÖµÄÎÊÌâ¡£
×ÜÖ®£¬EXP/IMPµÄʱºòÐèÒª¿¼ÂÇJOB£¬²¢ÔÚ²Ù×÷½áÊøºó¼ì²éJOBÐÅÏ¢ÊÇ·ñÒѾÕýÈ·µÄµ¼Èë¡£
±¾Îĸø´ó¼Ò½éÉÜÒ»ÏÂORACLE jobµÄʹÓ÷½·¨£º
Õâ¸öjob Ö´ÐеŦÄÜ: ÏòijÕűíÖж¨Ê±²åÈëÒ»Ìõ¼Ç¼(±ÈÈçÒ»·ÖÖÓ²åÈëÒ»Ìõ)
step 1: Ê×ÏÈ´´½¨Ò»Õűí a,
create table a(a date);
step 2: ´´½¨Ò»¸öproc test ,Õâ¸ö test ¾ÍÊÇÈ¡³öϵͳµÄµ±Ç°Ê±¼äÖµ,È»ºó²åÈëµ½ a ±íÖÐ
SQL> create or replace procedure test as
begin
insert into a values(sysdate);
end;
/
step 3: ´´½¨Ò»¸öjob,Õâ¸öjobÉèÖÃΪÿ·ÖÖÓÔËÐÐÒ»´Î,Ò²¾ÍÊÇÿ·ÖÖÓµ÷ÓÃÒ»ÏÂÉÏÃæµÄ test,Õâ¸ö proc
SQL> variable job1 number;
SQL>
SQL> begin
dbms_job.submit(:job1,'test;',sysdate,'sysdate+1/1440');¡¡¡¡--ÿÌì1440·ÖÖÓ£¬¼´Ò»·ÖÖÓÔËÐÐtest¹ý³ÌÒ»´Î
end;
/
step 4:È¥ÔËÐÐÉÏÃæ´´½¨ºÃµÄ job
SQL> begin
dbms_job.run(:job1);
end;
/
[×¢]:¹ý¼¸·ÖÖÓºó Óà select to_char(a,'yyyy/mm/dd hh24:mi:ss')from a; È¥²é¿´ a ±í,·¢ÏÖ¶àÁ˼¸Ìõ¼þ¼Ç¼,Õâ¾Í˵Ã÷ÁË job Õý³£¹¤×÷ÁË
Èç¹ûҪɾ³ýÕâ¸ö job ¿ÉÒÔÓÃ:
SQL> begin
dbms_job.remove(:job1);
end;
/
×¢£ºÓÃdeclareÉùÃ÷²»ÓüÓðºÅ job ²»ÐèÒªÔÚÃüÁîÐÐÀïÃæÖ´ÐÐ
Ïà¹ØÎĵµ£º
ºÜ¶àÅóÓÑÒªÎÒ°ïÃ¦ÍÆ¼öÒ»ÏÂOracleµÄÈëÃÅÊé¼®£¬Äܹ»Á˽âOracleµÄ»ù±¾¸ÅÄî¡¢»ù±¾ÖªÊ¶µÄÄÇÖÖ¡£
ÎÒ¾ÍÃâΪÆäÄÑ£¬ÍƼö¼¸±¾¡£
Ê×ÏÈÎÒÏëÇ¿µ÷µÄÒ»µãÊÇ£¬ÈκÎÒ»±¾ÏµÍ³µÄOracleÊé¼®Ö»ÒªÈÏÕæ¶ÁÏÂÀ´£¬¶¼»áÓв»´íµÄÊÕ»ñ£¬¶ÁÊé×î¼É»äµÄÊÇ»¢Í·Éßβ£¬Ç³³¢ÔòÖ¹¡£
1.µÚÒ»±¾ÒªÍƼö¸ø´ó¼ÒµÄÊÇOracleµÄ¸ÅÄîÊֲᣬÕâ±¾ÊÖ²áÊÇÎÞÊýDBAѧϰµÄÆðµã£ ......
decode()º¯數ʹÓü¼ÇÉ
·Èí¼þ»·¾³£º
1¡¢Windows NT4.0+ORACLE 8.0.4
2¡¢ORACLE°²×°Â·¾¶Îª£ºC:\ORANT
·º¬Òå½âÊÍ£º
decode(Ìõ¼þ,Öµ1,·ÒëÖµ1,Öµ2,·ÒëÖµ2,...Öµn,·ÒëÖµn,ȱʡֵ)
¸Ãº¯ÊýµÄº¬ÒåÈçÏ£º
IF Ìõ¼þ=Öµ1 THEN
¡¡¡¡¡¡¡¡RETURN(·ÒëÖµ1)
ELSIF Ìõ¼þ=Öµ2 THEN
¡¡¡¡¡¡¡¡RETURN(·ÒëÖµ2)
......
·ÖÒ³²éѯ¸ñʽ£º
SELECT * from
(
SELECT A.*, ROWNUM RN
from (SELECT * from TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21
ÆäÖÐ×îÄÚ²ãµÄ²éѯSELECT * from TABLE_NAME±íʾ²»½øÐзҳµÄÔʼ²éѯÓï¾ä¡£ROWNUM <= 40ºÍRN >= 21¿ØÖÆ·ÖÒ³²éѯµÄÿҳµÄ·¶Î§¡£
ÉÏÃæ¸ø³öµÄÕâ¸ö·ÖÒ³²éѯÓï¾ä£¬ÔÚ´ó¶à ......
Ê×ÏȸãÇåϼ¸¸ö¸ÅÄ
ORACLEÖУ¬Ô¼Êø·Ödeferred ¸ú immediate 2ÖÖ£º
deferred:Èç¹û Oracle ÔÚÊÂÎñÌá½»£¨commit£©Ê±²Å¶ÔÔ¼ÊøÖ´Ðмì²é£¬Ôò³Æ´ËÔ¼ÊøÊÇÑӳٵģ¨deferred£©¡£Èç¹ûÊý¾ÝÎ¥·´ÁËÑÓ³ÙÔ¼Êø£¬Ìá½»²Ù×÷½«µ¼ÖÂÊÂÎñ±»»Ø¹ö£¨undo£©¡£
immediate:Èç¹ûÔ¼ÊøÊǼ´Ê±µÄ£¨immediate£©£¨·ÇÑӳٵģ©£¬Ôò´ËÔ¼Êø½«ÔÚ ......
--½¨Á¢²âÊÔÊý¾Ý
create table a(id number);
create table b(id number);
insert into a values(1);
insert into a values(2);
insert into a values(3);
insert into b values(1);
insert into b values(2);
insert into b values(4);
commit;
--×ó:
--Ö÷Á÷Êý¾Ý¿âͨÓõķ½·¨
select * from a left ......