Oracle Exception
BEGIN
¡¡¡¡SELECT ...
¡¡¡¡SELECT ...
¡¡¡¡SELECT ...
¡¡¡¡...
¡¡¡¡EXCEPTION
¡¡¡¡WHEN NO_DATA_FOUND THEN -- catches all ’no data found’ errors
¡¡¡¡
¡¡¡¡2¡¢Òì³£µÄ·ÖÀà
¡¡¡¡
¡¡¡¡ÓÐÁ½ÖÖÀàÐ͵ÄÒì³££¬Ò»ÖÖΪÄÚ²¿Òì³££¬Ò»ÖÖΪÓû§×Ô¶¨ÒåÒì³££¬ÄÚ²¿Òì³£ÊÇÖ´ÐÐÆÚ¼ä·µ»Øµ½PL/SQL¿éµÄORACLE´íÎó»òÓÉPL/SQL´úÂëµÄij²Ù×÷ÒýÆðµÄ´íÎó£¬Èç³ýÊýΪÁã»òÄÚ´æÒç³öµÄÇé¿ö¡£Óû§×Ô¶¨ÒåÒì³£ÓÉ¿ª·¢ÕßÏÔʾ¶¨Ò壬ÔÚPL/SQL¿éÖд«µÝÐÅÏ¢ÒÔ¿ØÖƶÔÓÚÓ¦ÓõĴíÎó´¦Àí¡£
¡¡¡¡
¡¡¡¡Ã¿µ±PL/SQLÎ¥±³ÁËORACLEÔÔò»ò³¬Ô½ÁËϵͳÒÀÀµµÄÔÔò¾Í»áÒþʽµÄ²úÉúÄÚ²¿Òì³£¡£ÒòΪÿ¸öORACLE´íÎó¶¼ÓÐÒ»¸öºÅÂë²¢ÇÒÔÚPL/SQLÖÐÒ쳣ͨ¹ýÃû×Ö´¦Àí£¬ORACLEÌṩÁËÔ¤¶¨ÒåµÄÄÚ²¿Òì³£¡£ÈçSELECT INTO Óï¾ä²»·µ»ØÐÐʱ²úÉúµÄORACLEÒì³£NO_DATA_FOUND¡£¶ÔÓÚÔ¤¶¨ÒåÒì³££¬ÏÖ½«×î³£ÓõÄÒì³£ÁоÙÈçÏ£º
¡¡¡¡exception¡¡ oracle error¡¡ sqlcode value¡¡ condition
¡¡¡¡no_data_found¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ora-01403¡¡ +100¡¡ select into Óï¾äûÓзûºÏÌõ¼þµÄ¼Ç¼·µ»Ø
¡¡¡¡too_many_rows¡¡ ora-01422¡¡ -1422¡¡ select into Óï¾ä·ûºÏÌõ¼þµÄ¼Ç¼ÓжàÌõ·µ»Ø
¡¡¡¡dup_val_on_index¡¡ ora-00001¡¡ -1¡¡ ¶ÔÓÚÊý¾Ý¿â±íÖеÄijһÁУ¬¸ÃÁÐÒѾ±»ÏÞÖÆÎªÎ¨Ò»Ë÷Òý£¬³ÌÐòÊÔͼ´æ´¢Á½¸öÖØ¸´µÄÖµ
¡¡¡¡value_error¡¡ ora-06502¡¡ -6502¡¡ ÔÚת»»×Ö·ûÀàÐÍ£¬½ØÈ¡»ò³¤¶ÈÊÜÏÞʱ£¬»á·¢Éú¸ÃÒì³££¬ÈçÒ»¸ö×Ö·û·ÖÅä¸øÒ»¸ö±äÁ¿£¬¶ø¸Ã±äÁ¿ÉùÃ÷µÄ³¤¶È±È¸Ã×Ö·û¶Ì£¬¾Í»áÒý·¢¸ÃÒì³£
¡¡¡¡storage_error¡¡ ora-06500¡¡ -6500¡¡ ÄÚ´æÒç³ö
¡¡¡¡zero_divide¡¡ ora-01476¡¡ -1476¡¡ ³ýÊýΪÁã
¡¡¡¡case_not_found¡¡ ora-06592¡¡ -6530¡¡ ¶ÔÓÚÑ¡ÔñcaseÓï¾ä£¬Ã»ÓÐÓëÖ®ÏàÆ¥ÅäµÄÌõ¼þ£¬Í¬Ê±£¬Ò²Ã»ÓÐelseÓï¾ä²¶»ñÆäËûµÄÌõ¼þ
¡¡¡¡cursor_already_open¡¡ ora-06511¡¡ -6511¡¡ ³ÌÐòÊÔͼ´ò¿ªÒ»¸öÒѾ´ò¿ªµÄÓαê
¡¡¡¡timeout_on_resource¡¡ ora-00051¡¡ -51¡¡ ϵͳÔڵȴýijһ×ÊÔ´£¬Ê±¼ä³¬Ê±
¡¡¡¡
¡¡¡¡Èç¹ûÒª´¦ÀíδÃüÃûµÄÄÚ²¿Òì³££¬±ØÐëʹÓÃOTHERSÒì³£´¦ÀíÆ÷»òPRAGMA EXCEPTION_INIT ¡£PRAGMAÓɱàÒëÆ÷¿ØÖÆ£¬»òÕßÊǶÔÓÚ±àÒëÆ÷µÄ×¢ÊÍ¡£PRAGMAÔÚ±àÒëʱ´¦Àí£¬¶ø²»ÊÇÔÚÔËÐÐʱ´¦Àí¡£EXCEPTION_INIT¸æËß±àÒëÆ÷½«Òì³£ÃûÓëORACLE´íÎóÂë½áºÏÆðÀ´£¬ÕâÑù¿ÉÒÔͨ¹ýÃû×ÖÒýÓÃÈÎÒâµÄÄÚ²¿Òì³££¬²¢ÇÒ¿ÉÒÔͨ¹ýÃû×ÖΪÒì³£±àдһÊʵ±µÄÒì³£´¦ÀíÆ÷¡£
¡¡¡¡
¡¡¡¡ÔÚ×Ó³ÌÐòÖÐʹÓÃEXCEPTION_INITµÄÓï·¨ÈçÏ£º
¡¡¡¡PRAGMA EXCEPTION_INIT(exception_name
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
ѧϰOracle DBAÒ²°ë¸ö¶àѧÆÚÁË£¬½ñÌìÃÍÈ»²Å·¢ÏÖ£¬ÔÀ´ÎÒµÄÊ黹ÊǺÜеģ¬ÉϿβÙ×÷ʱºòÒ²Ö»ÊÇÖªµÀ´ó¸ÅÔõô×ö£¬µ«ÊÇÒªÕæµÄÈ«²¿×Ô¼º×ö£¬¶ø²»È¥·Ê黹ÊÇÓÐÒ»¶¨µÄÄѶȵģ¬ËùÒÔÄØ£¬½ñÌ쿪ʼ½«DBA´ÓÍ·¸´Ï°Ò»±é£¬Í¬Ê±ÔÙ²Ù×÷Ò»±é¡£
µÚÒ»Õ£¬Ñ§µÄÊÇOracleµÄÌåϵ½á¹¹£ ......
ʹÓÃÊý¾Ý¿âÊÓͼͨ³£³öÓÚÒÔÏÂÁ½¸öÄ¿µÄ£º1¡£½µµÍ²Ù×÷¸´ÔÓ¶È£»ÊÓͼÊÇÔ¤±àÒëµÄ²éѯ²Ù×÷£¬Ò»´Î¶¨Ò壬֮ºó¿É¿ìËÙµ÷Óã»2¡£Ìá¸ßϵͳ°²È«¡£ÊÓͼ×÷ΪÊý¾Ý¿â¶ÔÏ󣬿ÉÒÔ½«ÆäȨÏÞ¶ÀÁ¢³öÀ´¸³¸øÓû§£¬¿É±ÜÃâÓû§¶Ô»ù±íµÄäĿΣÏÕ²Ù×÷£¬Í¬Ê±Ò²¿ÉÆÁ±ÎÒ»²¿·Ö˽ÃܵÄÊôÐÔÁС£
¶¨ÒåÓï¾ä£º
CREATE
[OR REPLACE
]
[FORCE
|NOFORCE
......
OracleµÄsql*plusÊÇÓëoracle½øÐн»»¥µÄ¿Í»§¶Ë¹¤¾ß¡£ÔÚsql*plusÖУ¬¿ÉÒÔÔËÐÐsql*plusÃüÁîÓësql*plusÓï¾ä¡£
ÎÒÃÇͨ³£Ëù˵µÄDML¡¢DDL¡¢DCLÓï¾ä¶¼ÊÇsql*plusÓï¾ä£¬ËüÃÇÖ´ÐÐÍêºó£¬¶¼¿ÉÒÔ±£´æÔÚÒ»¸ö±»³ÆÎªsql bufferµÄÄÚ´æÇøÓòÖУ¬²¢ÇÒÖ»Äܱ£´æÒ»Ìõ×î½üÖ´ÐеÄsqlÓï¾ä£¬ÎÒÃÇ¿ÉÒÔ¶Ô±£´æÔÚsql bufferÖеÄsql Óï¾ä½øÐÐÐ޸ģ¬È»ºóÔÙ´ ......
oracle ¿ÉÓÐʲô·½·¨ ͳ¼ÆÃ¿ÔÂÀÛ»ý¹ºÂòÈËÊý
±ÈÈç˵ÓиöÃŵê 2008Ä깺ÂòÉÌÆ·µÄÈËÊý
±í:t_buy_log ×Ö¶Î f_username Óû§Ãû³Æ;¹ºÂòʱ¼äf_buytime
1 Èç¹ûÊÇͳ¼ÆÃ¿Ô¹ºÂòÈËÊý
select to_char(f_buytime,'yyymm'),count(distinct f_username)
from t_buy_log
group by to_char(f_buytime,'yyymm')
......