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½ÖèÈçÏ£º
µÚÒ»²½£º´Ó¸ù½Úµã¿ªÊ¼£»
µÚ¶þ²½£º·ÃÎʸýڵ㣻
µÚÈý²½£ºÅжϸýڵãÓÐÎÞδ±»·ÃÎʵÄ×ӽڵ㣬ÈôÓУ¬ÔòתÏòËü×î×ó²àµÄδ±»·ÃÎʵÄ×Ó½Ú£¬²¢Ö´Ðеڶþ²½£¬·ñÔòÖ´ÐеÚËIJ½£»
µÚËIJ½£ºÈô¸Ã½ÚµãΪ¸ù½Úµã£¬Ôò·ÃÎÊÍê±Ï£¬·ñÔòÖ´ÐеÚÎå²½£»
µÚÎå²½£º·µ»Øµ½¸Ã½ÚµãµÄ¸¸½Úµã£¬²¢Ö´ÐеÚÈý²½Öè¡£
×ÜÖ®£ºÉ¨ÃèÕû¸öÊ÷½á¹¹µÄ¹ý³ÌÒ²¼´ÊÇÖÐÐò±éÀúÊ÷µÄ¹ý³Ì¡£
1£®
Ê÷½á¹¹µÄÃèÊö
Ê÷½á¹¹µÄÊý¾Ý´æ·ÅÔÚ±íÖУ¬Êý¾ÝÖ®¼äµÄ²ã´Î¹ØÏµ¼´¸¸×Ó¹ØÏµ£¬Í¨¹ý±íÖеÄÁÐÓëÁмäµÄ¹ØÏµÀ´ÃèÊö£¬Èç
EMP
±íÖеÄ
EMPNO
ºÍ
MGR
¡£
EMPNO
±íʾ¸Ã¹ÍÔ±µÄ±àºÅ£¬
MGR
±íʾÁìµ¼¸Ã¹ÍÔ±µÄÈ˵ıàºÅ£¬¼´×Ó½ÚµãµÄ
MGR
ÖµµÈÓÚ¸¸½ÚµãµÄ
EMPNO
Öµ¡£ÔÚ±íµÄÿһÐÐÖж¼ÓÐÒ»¸ö±íʾ¸¸½ÚµãµÄ
MGR
£¨³ý¸ù½ÚµãÍ⣩£¬Í¨¹ýÿ¸ö½ÚµãµÄ¸¸½Úµã£¬¾Í¿ÉÒÔÈ·¶¨Õû¸öÊ÷½á¹¹¡£
ÔÚ
SELECT
ÃüÁîÖÐʹÓÃ
CONNECT BY
ºÍ°ª
START WITH
×Ó¾ä¿ÉÒÔ²éѯ±íÖеÄÊ÷Ðͽṹ¹ØÏµ¡£ÆäÃüÁî¸ñʽÈçÏ£º
SELECT
¡£¡£¡£
CONNECT BY {PRIOR
ÁÐÃû
1=
ÁÐÃû
2|
ÁÐÃû
1=PRIOR
ÁÑÃû
2}
[START WITH]
£»
ÆäÖУº
CONNECT BY
×Ó¾ä˵Ã÷ÿÐÐÊý¾Ý½«Êǰ´²ã´Î˳Ðò¼ìË÷£¬²¢¹æ¶¨½«±íÖеÄÊý¾ÝÁ¬ÈëÊ÷ÐͽṹµÄ¹ØÏµÖС£
PRIORY
ÔËËã·û±ØÐë·ÅÖÃÔÚÁ¬½Ó¹ØÏµµÄÁ½ÁÐÖÐijһ¸öµÄÇ°Ãæ¡£¶ÔÓÚ½Úµã¼äµÄ¸¸×Ó¹ØÏµ£¬
PRIOR
ÔËËã·ûÔÚÒ»²à±íʾ¸¸½Úµã£¬ÔÚÁíÒ»²à±íʾ×ӽڵ㣬´Ó
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
Oracle 9i±È8i¶àÁËÄÄЩÐÂÌØÐÔ£¿
¼òҪ˵£º
9i¸üÒ×ÓÚ¹ÜÀí¡£
Ïêϸ˵£º
²¢·¢¼¯Èº£¬8i OPSÉý¼¶Îª9i RAC£¬8i½áµã¼äÓÃÓ²Å̽»»»ÐÅÏ¢£¬9i½áµã¼ä²ÉÓøßËÙÍøÏߵĻº´æÈÛºÏ(Cache Fusion)¼¼Êõ½»»»ÐÅÏ¢£¬½»»»ËÙ¶ÈÌá¸ß100±¶ÒÔÉÏ¡£
9i¿ÉÒÔÔÚÏßÐÞ¸ÄÄں˲ÎÊýºÍÄÚ´æ·ÖÅä£ ......
1.oracle×Ö·û¼¯ÎÊÌ⣺
Êý¾Ý¿â×Ö·û¼¯ÎªZHS16BGK£¬ºº×ÖÔÚÊý¾Ý¿â´æ·ÅµÄʱºòÕ¼ÓÃÁ½¸ö×Ö½Ú
Êý¾Ý¿â×Ö·û¼¯ÎªUTF8£¬ºº×ÖÔÚÊý¾Ý¿âÀï´æ·ÅµÄʱºòÕ¼ÓÃÈý¸ö×Ö½Ú
ÓÉÓÚ×Ö·û¼¯²»Í¬£¬µ¼ÖÂÏÖÔÚÊý¾Ý¿âIMPµÄʱºòÓÐЩ±íµÄ×ֶγ¤¶È²»¹»£¬³öÏÖORA-12899: value too large for columnµÄ´íÎó¡£
ͨ¹ýÐÞ¸Ä×Ö·û¼¯¿ÉÒÔ½â¾öÕâÖÖÎÊÌâ¡£
2.utf-8ºÍunico ......
1.OSÈÏÖ¤
Oracle°²×°Ö®ºóĬÈÏÇé¿öÏÂÊÇÆôÓÃÁËOSÈÏÖ¤µÄ£¬ÕâÀïÌáµ½µÄosÈÏÖ¤ÊÇÖ¸·þÎñÆ÷¶ËosÈÏÖ¤¡£OSÈÏÖ¤µÄÒâ˼°ÑµÇ¼Êý¾Ý¿âµÄÓû§ºÍ¿ÚÁîУÑé·ÅÔÚÁ˲Ù×÷ϵͳһ¼¶¡£Èç¹ûÒÔ°²×°OracleʱµÄÓû§µÇ¼OS£¬ÄÇô´ËʱÔڵǼOracleÊý¾Ý¿âʱ²»ÐèÒªÈκÎÑéÖ¤£¬È磺
SQL> connect /as sysdba
ÒÑÁ¬½Ó¡£
SQL> connect sys/aaa@te ......
1. ϵͳÅäÖùý³Ì
2.1. oracle°²×°Ìõ¼þ¼ì²é
2.1.1. Ó²¼þ¼ì²é
¼ì²éÓ²¼þÇé¿öÊÇ·ñ·ûºÏoracle 10g µÄ°²×°ÒªÇó¡£ÒÔrootµÇ¼ϵͳ£¬ÓÃϱíÃüÁîÊä³öµÄÖµÓ¦´óÓÚ»òµÈÓÚ½¨ÒéÖµ¡£
¼ì²éÏîÄ¿
ÃüÁî ......