Info
Content

Hide SQL Errors with Try Catch Blocks


If you are working on any PeopleCode that involves inserting or updating data in a table, and you want to avoid showing any SQL errors to the user, then use a try-catch section.

For example, I was working on some code to log extra information about a transaction to a logging table. In the event that the logging failed due to a SQL error, the entire transaction would stop. Not a good thing to happen to a user who doesn't know or care about the fact that you are doing some system logging.

Here's my basic code wrapped in a try-catch section:

try
  SQLExec(SQL.EXAMPLE, &p1, &p2, &p3);
catch Exception &ex
  /* Ignore the exception and move on */
end-try;

In the above, you could have some code to deal with the exception. But the point in my case was to not display a fatal SQL error which stopped the transaction from continuing. This is really just for safety. I'm not expecting a SQL error but if one does ever happen, the code will move on and not abort the transaction.

No Comments
Back to top