ORACLEÕï¶Ïʼþ
OracleΪRDBMSÌṩÁ˶àÖÖµÄÕï¶Ï¹¤¾ß£¬Õï¶Ïʼþ(Event)ÊÇÆäÖÐÒ»ÖÖ³£ÓᢺÃÓõķ½·¨£¬ËüʹDBA¿ÉÒÔ·½±ãµÄת´¢Êý¾Ý¿â¸÷Öֽṹ¼°¸ú×ÙÌØ¶¨Ê¼þµÄ·¢Éú.
Ò»¡¢EventµÄͨ³£¸ñʽ¼°·ÖÀà
1¡¢ ͨ³£¸ñʽÈçÏ£º
EVENT="<ʼþÃû³Æ><¶¯×÷><¸ú×ÙÏîÄ¿><·¶Î§ÏÞ¶¨>"
2¡¢ Event·ÖÀà
Õï¶Ïʼþ´óÌåÉÏ¿ÉÒÔ·ÖΪËÄÀࣺ
a£® ת´¢Ààʼþ£ºËüÃÇÖ÷ÒªÓÃÓÚת´¢OracleµÄһЩ½á¹¹£¬ÀýÈçת´¢Ò»Ï¿ØÖÆÎļþ¡¢Êý¾ÝÎļþÍ·µÈÄÚÈÝ¡£
b£® ²¶×½Ààʼþ£ºËüÃÇÓÃÓÚ²¶×½Ò»Ð©ErrorʼþµÄ·¢Éú£¬ÀýÈç²¶×½Ò»ÏÂORA-04031·¢ÉúʱһЩRdbmsÐÅÏ¢£¬ÒÔÅжÏÊÇBug»¹ÊÇÆäËüÔÒòÒýÆðµÄÕâ·½ÃæµÄÎÊÌâ¡£
c£® ¸Ä±äÖ´ÐÐ;¾¶Ààʼþ£ºËüÃÇÓÃÓÚ¸ÄÖ÷һЩOracleÄÚ²¿´úÂëµÄÖ´ÐÐ;¾¶£¬ÀýÈçÉèÖÃ10269½«»áʹSmon½ø³Ì²»È¥ºÏ²¢ÄÇЩFreeµÄ¿Õ¼ä¡£
d£® ¸ú×ÙÀàʼþ£ºÕâÃÇÓÃÓÚ»ñȡһЩ¸ú×ÙÐÅÏ¢ÒÔÓÃÓÚSqlµ÷Óŵȷ½Ã棬×îµäÐ͵ıãÊÇ10046ÁË£¬½«»á¶ÔSql½øÐиú×Ù¡£
3¡¢ ˵Ã÷:
a£® Èç¹ûimmediate·ÅÔÚµÚÒ»¸ö˵Ã÷ÊÇÎÞÌõ¼þʼþ£¬¼´ÃüÁî·¢³ö¼´×ª´¢µ½¸ú×ÙÎļþ¡£
b£® trace nameλÓÚµÚ¶þ¡¢ÈýÏ³ýËüÃÇÍâµÄÆäËüÏÞ¶¨´ÊÊǹ©OracleÄÚ²¿¿ª·¢×éÓõġ£
c£® levelͨ³£Î»ÓÚ1-10Ö®¼ä(10046ÓÐʱÓõ½12)£¬10Òâζ×Åת´¢Ê¼þËùÓеÄÐÅÏ¢¡£ÀýÈ統ת´¢¿ØÖÆÎļþʱ£¬level1±íʾת´¢¿ØÖÆÎļþÍ·£¬¶ølevel 10±íÃ÷ת´¢¿ØÖÆÎļþÈ«²¿ÄÚÈÝ¡£
d£® ת´¢ËùÉú³ÉµÄtraceÎļþÔÚuser_dump_dest³õʼ»¯²ÎÊýÖ¸¶¨µÄλÖá£
¶þ¡¢ËµÒ»ËµÉèÖõÄÎÊÌâÁË
¿ÉÒÔÔÚinit.oraÖÐÉèÖÃËùÐèµÄʼþ£¬Õ⽫¶ÔËùÓлỰÆÚ´ò¿ªµÄ»á»°½øÐиú×Ù£¬Ò²¿ÉÒÔÓÃalter session set event µÈ·½·¨ÉèÖÃʼþ¸ú×Ù£¬Õ⽫´ò¿ªÕýÔÚ½øÐлỰµÄʼþ¸ú×Ù¡£
1¡¢ ÔÚinit.oraÖÐÉèÖøú×ÙʼþµÄ·½·¨
a£® Óï·¨
EVENT=”event Óï·¨|,level n|£ºevent Óï·¨|,level n|…”
b£® ¾ÙÀý
event=”10231 trace name context forever,level 10’
c£® ¿ÉÒÔÕâÑùÉèÖöà¸öʼþ£º
EVENT="\
10231 trace name context forever, level 10:\
10232 trace name context forever, level 10"
2¡¢ ͨ¹ýAlter session/system set eventsÕâÖÖ·½·¨
¾Ù¸öÀý×Ó´ó¼Ò¾ÍÃ÷°×ÁË
Example:
Alter session set events ‘immediate trace name controlf level 10’;
Alter session set events ‘immediate trace name blockdump level 112511416’; (*)
ÔÚoracle8x¼°Ö®Éϵİ汾ҲÓÐÕâÑùµÄÓï
Ïà¹ØÎĵµ£º
SQLÖеĵ¥¼Ç¼º¯Êý
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
A A ZERO ......
Oracleʱ¼äÈÕÆÚ²Ù×÷
sysdate+(5/24/60/60) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ãë
sysdate+5/24/60 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5·ÖÖÓ
sysdate+5/24 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Сʱ
sysdate+5 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ìì
add_months(sysdate,-5) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5ÔÂ
add_months(sysdate,-5*12) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Äê
ÉÏÔÂÄ©µÄÈÕÆÚ£ºsel ......
1.1.1 °²×°OracleÊý¾Ý¿â·þÎñ¶Ë
°´ÕÕ°²×°Ïòµ¼£¬ÕýÈ·°²×°Oracle 9i¡£
°´ÕÕĬÈÏÑ¡Ïµã»÷ÏÂÒ»²½£¬¼´¿É¡£
ͼ 2 2 Oracle °²×°Ïòµ¼ - »¶ÓʹÓÃ
ͼ 2 3 Oracle °²×°Ïòµ¼ - Îļþ¶¨Î»
ÕâÀÐè×¢ÒâOracleµÄ°²×°Îļþ·¾¶²»Äܰüº¬¿Õ¸ñºÍÖÐÎÄÃû¡£Ä¬Èϰ²×°Â·¾¶ÊÇD:\oracle\ora92,ÕâÀィÒéʹÓÃÕâ¸ö°²×°Â·¾¶¡££¨°²×°£© ......
Ò»¡¢ÐèÒª²éѯµÄÊý¾Ý
1
¡¢²éѯ³öÔÂн´óÓÚ
'SMITH'
µÄËùÓÐÔ±¹¤×ÊÁÏ
select *from emp where
sal>(select sal from emp where name="SMITH");
2
¡¢²éѯËùÓÐÔ±¹¤µÄÐÕÃû¼°Áìµ¼ÐÕÃû
select e1.ename,e2.ename from
emp e1,emp e2 where e1.mgr=e2.empno(+);
3
......
ת×Ô£ºhttp://hi.baidu.com/magus163/blog/item/a4f783178e39ef00c93d6de6.html
¡¾ÕâÆªÎÄÕÂÀý×Ó½²½âµÄ±È½ÏÏêϸ£¬ÎÒ¾Íת¹ýÀ´ÁË¡¿
Oracle9iÒýÈëÁËMERGEÃüÁî,ÄãÄܹ»ÔÚÒ»¸öSQLÓï¾äÖжÔÒ»¸ö±íͬʱִÐÐinsertsºÍupdates²Ù×÷. MERGEÃüÁî´ÓÒ»¸ö»ò¶à¸öÊý¾ÝÔ´ÖÐÑ¡ÔñÐÐÀ´updating»òinsertingµ½Ò»¸ö»ò¶à¸ö±í.
Oracle 10gÖÐMERGEÓÐÈ ......