Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : Oracle

OracleÖÐstart with¡­connect by prior×Ó¾äÓ÷¨

OracleÖÐstart with…connect by prior×Ó¾äÓ÷¨
connect by Êǽṹ»¯²éѯÖÐÓõ½µÄ£¬Æä»ù±¾Óï·¨ÊÇ£º
select … from tablename
start with Ìõ¼þ1
connect by Ìõ¼þ2
where Ìõ¼þ3;
Àý£º
select * from table
start with org_id = ‘HBHqfWGWPy’
connect by prior org_id = parent_id;
         ¼òµ¥ËµÀ´Êǽ«Ò»¸öÊ÷×´½á¹¹´æ´¢ÔÚÒ»ÕűíÀ±ÈÈçÒ»¸ö±íÖдæÔÚÁ½¸ö×Ö¶Î:
org_id£¬parent_idÄÇôͨ¹ý±íʾÿһÌõ¼Ç¼µÄparentÊÇË­£¬¾Í¿ÉÒÔÐγÉÒ»¸öÊ÷×´½á¹¹¡£
        ÓÃÉÏÊöÓï·¨µÄ²éѯ¿ÉÒÔÈ¡µÃÕâ¿ÃÊ÷µÄËùÓмǼ¡£
ÆäÖУº
Ìõ¼þ1 ÊǸù½áµãµÄÏÞ¶¨Óï¾ä£¬µ±È»¿ÉÒÔ·Å¿íÏÞ¶¨Ìõ¼þ£¬ÒÔÈ¡µÃ¶à¸ö¸ù½áµã£¬Êµ¼Ê¾ÍÊǶà¿ÃÊ÷¡£
Ìõ¼þ2 ÊÇÁ¬½ÓÌõ¼þ£¬ÆäÖÐÓÃPRIOR±íʾÉÏÒ»Ìõ¼Ç¼£¬±ÈÈç CONNECT BY PRIOR org_id = parent_id£»¾ÍÊÇ˵ÉÏÒ»Ìõ¼Ç¼µÄorg_id ÊDZ¾Ìõ¼Ç¼µÄparent_id£¬¼´±¾¼Ç¼µÄ¸¸Ç×ÊÇÉÏÒ»Ìõ¼Ç¼¡£
Ìõ¼þ3 ÊǹýÂËÌõ¼þ£¬ÓÃÓÚ¶Ô·µ»ØµÄËùÓмǼ½øÐйýÂË¡£
¼òµ¥½éÉÜÈçÏ£º
ÔÚɨÃèÊ÷½á¹¹±íʱ£¬ÐèÒªÒÀ´Ë·ÃÎÊÊ÷½á¹¹µÄÿ¸ö½Úµã£¬Ò»¸ö½ÚµãÖ»ÄÜ·ÃÎÊÒ»´Î£¬Æä·ÃÎʵIJ½ÖèÈçÏ£º
µÚÒ»²½£º´Ó ......

OracleÖÐÖ»¸üÐÂÁ½Õűí¶ÔÓ¦Êý¾ÝµÄ·½·¨

OracleÖÐÖ»¸üÐÂÁ½Õűí¶ÔÓ¦Êý¾ÝµÄ·½·¨
ÏȽ¨Á¢Ò»¸ö½á¹¹Ò»Ä£Ò»ÑùµÄ±íemp1£¬²¢ÎªÆä²åÈ벿·ÖÊý¾Ý
create table emp1
as
select * from emp where deptno = 20;
updateµôemp1ÖеIJ¿·ÖÊý¾Ý
update emp1
set sal = sal + 100,
comm = nvl(comm,0) + 50
È»ºóÎÒÃÇÊÔ×ÅʹÓÃemp1ÖÐÊý¾ÝÀ´¸üÐÂempÖÐsal ºÍ commÕâÁ½ÁÐÊý¾Ý¡£
ÎÒÃÇ¿ÉÒÔÕâôд
Update emp
Set(sal,comm) = (select sal,comm. from emp1 where emp.empno = emp1.empno)
Where exists (select 1 from emp1 where emp1.empno = emp.empno)
ÇëÄãÓÈÆä×¢ÒâÕâÀïµÄwhere×Ӿ䣬Äã¿ÉÒÔ³¢ÊÔ²»Ð´where×Ó¾äÀ´Ö´ÐÐÒÔÏÂÕâ¾ä»°£¬Ä㽫»áʹµÃempÖеĺܶàÖµ±ä³É¿Õ¡£
ÕâÊÇÒòΪÔÚoracleµÄupdateÓï¾äÖÐÈç¹û²»Ð´where×Ó¾ä,oracle½«»áĬÈϵİÑËùÓеÄֵȫ²¿¸üУ¬¼´Ê¹ÄãÕâÀïʹÓÃÁË×Ó²éѯ²¢ÇÒijÔÚÖµ²¢²»ÄÜÔÚ×Ó²éѯÀïÕÒµ½£¬Äã¾Í»áÏ뵱ȻµÄÒÔΪ,oracle»òÐí½«»áÌø¹ýÕâЩֵ°É£¬Äã´íÁË£¬oracle½«»á°Ñ¸ÃÐеÄÖµ¸üÐÂΪ¿Õ¡£
ÎÒÃÇ»¹»¹¿ÉÒÔÕâôд£º
update (select a.sal asal,b.sal bsal,a.comm acomm,
b.comm bcomm from emp a,emp1 b where a.empno = b.empno)
set asal = bsal,
acomm = bcomm;
ÕâÀïµÄ±íÊÇÒ»¸öÀàÊÓͼ¡£µ±È»ÄãÖ´ÐÐʱ¿ÉÄÜ»áÓöµ ......

oracleÈçºÎ¼Ç¼Óû§µÄµÇ½ÐÅÏ¢

oracleÈçºÎ¼Ç¼Óû§µÄµÇ½ÐÅÏ¢
¿ÉÒÔ×öÒ»¸ö´¥·¢Æ÷  
  ÓÃÒÔϵķ½Ê½¿ÉÒÔ¼à¿ØµÇÈëµÇ³öµÄÓÃ戶:
´´½¨Ò»ÕżÇ¼µÇ¼TABLE£¬ÈçÏ£º 
CREATE TABLE SYSTEM.LOGIN_LOG
(
    SESSION_ID                     NUMBER(8,0) NOT NULL,
    LOGIN_ON_TIME                  DATE,
    LOGIN_OFF_TIME                 DATE,
    USER_IN_DB                     VARCHAR2(50),
    MACHINE                        VARCHAR2(50),
    IP_ADD ......

ÐÞ¸ÄOracleµÄ½ø³ÌÊý[processes]¼°»á»°Êý[sessions]

ÐÞ¸ÄOracleµÄ½ø³ÌÊý[processes]¼°»á»°Êý[sessions]
1.ͨ¹ýSQLPlusÐÞ¸Ä
OracleµÄsessionsºÍprocessesµÄ¹ØÏµÊÇ
         sessions=1.1*processes + 5
ʹÓÃsys£¬ÒÔsysdbaȨÏ޵Ǽ£º
SQL> show parameter processes;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------------------------------------
aq_tm_processes                      integer     1
db_writer_processes                  integer     1
job_queue_processes           ......

OracleÖÐÌí¼ÓJob

OracleÖÐÌí¼ÓJob
 --ÿ15·ÖÖÓ trunc(sysdate+1/96,'MI')/*5:Mins*/ sysdate + 5/(60*24)
SQL> variable jobno number;
SQL> begin
  2  dbms_job.submit(:jobno,'´æ´¢¹ý³ÌÃû;',sysdate,'/*1:Hr*/ sysdate + 1/24' );
  3  commit;
  4  end;
  5  /
......

ORACLEÈçºÎÍ£Ö¹Ò»¸öJOB

ORACLEÈçºÎÍ£Ö¹Ò»¸öJOB
1 Ïà¹Ø±í¡¢ÊÓͼ
2 ÎÊÌâÃèÊö
Ϊͬʽâ¾öÒ»¸öÒòÎªÍøÂçÁ¬½ÓÇé¿ö²»¼Ñʱ£¬Ö´ÐÐÒ»¸ö³¬³¤Ê±¼äµÄSQL²åÈë²Ù×÷¡£
¼ÈÈ»ÍøÂç×´¿ö²»ºÃ£¬¾ÍÑ¡ÔñÁËʹÓÃÒ»´ÎÐÔʹÓÃJOBÀ´Íê³É¸Ã²åÈë²Ù×÷¡£ÔÚJOBÖ´ÐÐÒ»¶Îʱ¼äºó£¬ÎÒ·¢ÏÖ±»²åÈë±íÓÐЩÎÊÌ⣨²ÑÀ¢£¬µ±Ê±Ò²Ã»ÓÐÏȼì²é¼ì²é¾Í×öÁË£©¡£×¼±¸Í£Ö¹JOB£¬ÒòΪÔÚJOBÔËÐÐÇé¿öÏ£¬ÎÒµÄËùÓÐÐ޸ͼ»á±¨ÏµÍ³×ÊԴæµÄ´íÎó¡£
Ç¿ÐÐKILL SESSIONÊÇÐв»Í¨µÄ£¬ÒòΪ¹ý»á¶ù£¬JOB»¹»áÖØÐÂÆô¶¯£¬Èç¹ûÖ´ÐеÄSQLÒ²±»KILLÁËͨ¹ýÖØÐÂÆô¶¯µÄJOB»¹ÊǻᱻÔÙ´ÎÐÂÖ´Ðеġ£
3 ½â¾ö°ì·¨
±È½ÏºÃµÄ·½·¨Ó¦¸ÃÊÇ;
1). Ê×ÏÈÈ·¶¨ÒªÍ£Ö¹µÄJOBºÅ
    ÔÚ10gÖпÉͨ¹ýDba_Jobs_Running½øÐÐÈ·ÈÏ¡£
    ²éÕÒÕýÔÚÔËÐеÄJOB:
    select sid from dba_jobs_running;
    ²éÕÒµ½ÕýÔÚÔËÐеÄJOBµÄspid:
    select a.spid from v$process a ,v$session b where a.addr=b.paddr and b.sid in (select sid from dba_jobs_running);
2). BrokenÄãÈ·ÈϵÄJOB   
    ×¢ÒâʹÓÃDBMS_JOB°üÀ´±êʶÄãµÄJOBΪBROKEN¡£
    SQL> EXEC DBMS_JOB.BR ......
×ܼǼÊý:3994; ×ÜÒ³Êý:666; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [123] [124] [125] [126] 127 [128] [129] [130] [131] [132]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ