PLSQL - handling errors when using an implicit cursor
From: Schauss, Peter (ESS) <"Schauss,>
Date: Wed, 29 Jun 2011 20:20:41 +0000
Message-ID: <8AE45871F749FC4CBBE053CF2F8A493C0A6F697B_at_XMBVAG74.northgrum.com>
I have a stored procedure which is copying and, in some cases, transforming data from one table to another. For some reasons related to the application requirements, I have to use code in the form:
Date: Wed, 29 Jun 2011 20:20:41 +0000
Message-ID: <8AE45871F749FC4CBBE053CF2F8A493C0A6F697B_at_XMBVAG74.northgrum.com>
I have a stored procedure which is copying and, in some cases, transforming data from one table to another. For some reasons related to the application requirements, I have to use code in the form:
insert into target_table (c1,c2, c3,...)
(select s1,s2,s3,...) from source_table where ...);
I am trying to work out a way to handle errors so that we can determine which row in the source table caused the insert to fail. The only thing I have thought of so far would be to use an ORDER BY clause in the select statement. Then the SQL%ROWCOUNT+1 would be the offending row in the source table. I could then retrieve that row with a select statement. Read consistency should insure that it would be the same row as long as I do not commit or roll back the transaction. Can anyone suggest a less cumbersome solution?
Thanks,
Peter Schauss
-- http://www.freelists.org/webpage/oracle-lReceived on Wed Jun 29 2011 - 15:20:41 CDT