plsql error handling

plsql error handling
SET  SERVEROUTPUT  ON ;

DECLARE
   stock_price 
NUMBER  : =   9.73 ;
   net_earnings 
NUMBER  : =   0 ;
   pe_ratio 
NUMBER ;
BEGIN
--  Calculation might cause division-by-zero error.
   pe_ratio : =  stock_price  /  net_earnings;
   dbms_output.put_line(
' Price/earnings ratio =  '   ||  pe_ratio);

EXCEPTION  
--  exception handlers begin

--  Only one of the WHEN blocks is executed.

   
WHEN  ZERO_DIVIDE  THEN    --  handles 'division by zero' error
      dbms_output.put_line( ' Company must have had zero earnings. ' );
      pe_ratio :
=   null ;

   
WHEN  OTHERS  THEN    --  handles all other errors
      dbms_output.put_line( ' Some other kind of error occurred. ' );
      pe_ratio :
=   null ;

END ;   --  exception handlers and block end here
/
ref : http://www.sc.ehu.es/siwebso/KZCC/Oracle_10g_Documentacion/appdev.101/b10807/07_errs.htm

你可能感兴趣的:(plsql error handling)