Re: Script to overcome ORA-54 during DDL

Because if you do not have a when-others, the error is automatically raised... 
You DON'T NEED the
when-others

SQL> declare
  2    x number;
  3  begin
  4    x := 1 / 0 ;
  5  exception
  6    when others then raise;
  7  end;
  8  /
declare
*
ERROR at line 1:
ORA-01476: divisor is equal to zero
ORA-06512: at line 6


SQL> declare
  2    x number;
  3  begin
  4    x := 1 / 0 ;
  5  end;
  6  /
declare
*
ERROR at line 1:
ORA-01476: divisor is equal to zero
ORA-06512: at line 4


hth
Connor

--- Mladen Gogala <gogala@xxxxxxxxxxxxx> wrote: > 
> On 06/25/2004 10:46:50 PM, Connor McDonald wrote:
> 
> > --   when others then raise;
> 
> 
> Why did you comment that out? One would think that you'd like to know about 
> errors
> like ORA-0942? I would suggest even better code:
> create or replace procedure do_ddl(m_sql varchar2)
> as
>  

=====
Connor McDonald
Co-author: "Mastering Oracle PL/SQL - Practical Solutions"
ISBN: 1590592174

web: http://www.oracledba.co.uk
web: http://www.oaktable.net
email: connor_mcdonald@xxxxxxxxx

Coming Soon! "Oracle Insight - Tales of the OakTable"

"GIVE a man a fish and he will eat for a day. But TEACH him how to fish, 
and...he will sit in a boat and drink beer all day"

------------------------------------------------------------


        
        
                
___________________________________________________________ALL-NEW Yahoo! 
Messenger - sooooo many all-new ways to express yourself 
http://uk.messenger.yahoo.com
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------

Other related posts: