Catch the error in an exception clause and ignore it. SQL> set serveroutput on SQL> run 1 declare 2 x number ; 3 begin 4 x := to_number ('123^') ; 5 exception 6 when value_error 7 then 8 dbms_output.put_line ('Bad Number') ; 9 when others 10 then 11 raise ; 12* end ; Bad Number Procedura PL/SQL completata correttamente.
> -----Original Message----- > Saira Somani-Mendelin > > I have a shell script that executes a sql*plus script (which > executes a > procedure) based on user input. > > But what if the user inputs an invalid datatype? The exception section > handles the error and displays a user-friendly message but I still get > an error stack. I want to hide this from the user. How can I > do this? I > have set feedback and echo options off. See output below: > > PO Reconciliation Batch Release > ================================ > > Enter batch number to be released: > yrugis > You have entered an invalid number! Exiting program... > **[I want to suppress the errors below]** > BEGIN RELEASE_PO_B_H('yrugis'); END; > > * > ERROR at line 1: > ORA-01722: invalid number > ORA-06512: at "TRAIN65D.RELEASE_PO_B_H", line 16 > ORA-06512: at line 1 -- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Jacques Kilchoer INET: [EMAIL PROTECTED] Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).