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
Ïà¹ØÎĵµ£º
°²×°oralce10g R1(10.1)²½Öè·½·¨£º
µÚÒ»²¿·Ö£º
Ò». Ó²¼þ»·¾³£º
1. RAM£ºÖÁÉÙ512M
2. ½»»»·ÖÇø´óСÖÁÉÙ1G£¨»òÕßÊÇÄÚÔÚµÄ2±¶£©
3./tmpĿ¼ ÖÁÉÙÓÐ400M¿ÕÏпռä
4. oracleÈí¼þ°²×°¿Õ¼äÖÁÉÙÔÚ1.5G--3GÖ®¼ä£¨ÒÀ¾Ý°²×°oracleÀàÐͶø¶¨£©
&nbs ......
OracleµÄsql*plusÊÇÓëoracle½øÐн»»¥µÄ¿Í»§¶Ë¹¤¾ß¡£ÔÚsql*plusÖУ¬¿ÉÒÔÔËÐÐsql*plusÃüÁîÓësql*plusÓï¾ä¡£
ÎÒÃÇͨ³£Ëù˵µÄDML¡¢DDL¡¢DCLÓï¾ä¶¼ÊÇsql*plusÓï¾ä£¬ËüÃÇÖ´ÐÐÍêºó£¬¶¼¿ÉÒÔ±£´æÔÚÒ»¸ö±»³ÆÎªsql bufferµÄÄÚ´æÇøÓòÖУ¬²¢ÇÒÖ»Äܱ£´æÒ»Ìõ×î½üÖ´ÐеÄsqlÓï¾ä£¬ÎÒÃÇ¿ÉÒÔ¶Ô±£´æÔÚsql bufferÖеÄsql Óï¾ä½øÐÐÐ޸ģ¬È»ºóÔÙ´ ......
Ò». Oracle ¿ØÖÆÎļþÖ÷Òª°üº¬ÈçÏÂÌõÄ¿
DATABASE ENTRY
CHECKPOINT PROGRESS RECORDS
REDO THREAD RECORDS
LOG FILE RECORDS
DATA FILE RECORDS
TEMP FILE RECORDS
TABLESPACE RECORDS
LOG FILE HISTORY RECORDS
OFFLINE RANGE RECORDS
ARCHIVED LOG RECORDS
BACKUP SET RECORDS
BACKUP PIECE RECORD ......
1. ²éѯÊý¾Ý¿âÏÖÔڵıí¿Õ¼ä
select tablespace_name, file_name, sum(bytes)/1024/1024 table_size from dba_data_files group by tablespace_name,file_name;
2. ½¨Á¢±í¿Õ¼ä
CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M;
3.ɾ³ý±í¿Õ¼ä
DROP TABLESPACE data01 INCLUDING CONTENTS ......
Ê×ÏȲ鿴Êý¾Ý¿âÏÖÓÐģʽ¿ÉʹÓÃÒÔÏÂÓï¾ä
select name,log_mode from v$database;
Ò²¿ÉÒÔÓÃÏÂÃæµÄÓï¾ä
archive log list£»(¸Ã·½·¨ÐèÒªas sysdba)
SQL> archive log list
Database log mode ¡¡¡¡¡¡¡¡¡¡¡¡No Archive Mode
Automatic archival¡¡¡¡¡¡¡¡¡¡¡¡Disabled
Archive destination¡¡¡¡¡¡¡¡¡¡ /export/home ......