A Dev Gym Class

Nine Good-to-Knows for PL/SQL Error Management

A free Error Management course

This class covers key features and guidelines for managing errors in your PL/SQL-based applications. It is built around a blog and a video playlist created by Steven Feuerstein - links to both are in each module of the class, but may also be found in the list of resources for this class (see bottom of page).
Join 5,543 students    (159 ratings)

Oracle Account Text

You need an Oracle Account to take a class. Click here to sign up.
Already a member of the Oracle Dev Gym? Click here to get back to work.

Course Modules

Handling Exceptions Raised in Declaration Section

#1 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. So what territory does an exception section actually handle, anyway? What happens if you raise an exception in the declaration section? You might be surprised, but you don't WANT to be surprised. To take away the mystery, read the blog post, watch a short video, and then it's quiz time!

Impact of Exceptions on Transactions

#2 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. Lots of developers think that whenever there is an exception, all uncommitted changes are rolled back. Not necessarily so! Make sure you are crystal clear on this topic: read the blog post, watch a short video, and then it's quiz time! Any non-query DML statements that complete successfully in your session are not rolled back when an exception occurs - either directly in PL/SQL or propagated out from the SQL engine. You still have the option of either committing or rolling back yourself.

Hard-Coding Error Numbers

#3 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. Some errors have named exceptions, but lots don't. So do you hard-code error numbers in your code? That doesn't sound good. To find out about alternatives, read the blog post, watch a short video, and then it's quiz time!

Propagation of Exceptions (or Not)

#4 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management blog post. Let's explore how exceptions propagate out through enclosing blocks. Read the blog post, watch a short video, then it's quiz time! URL for blog post: http://stevenfeuersteinonplsql.blogspot.com/2016/03/nine-good-to-knows-about-plsql-error.html

Important Data to Log With Errors

#5 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. Whenever you handle an exception and record the error in your log, you need to grab some key data. Which data? To find out...read the blog post, watch a short video, and then it's quiz time!

Logging and Re-Raising Exceptions

#6 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. Let's explore the impact of re-raising an exception for error handling and logging. Read the blog post, watch a short video, then it's quiz time!

WHEN OTHERS THEN NULL

#7 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. When things go wrong, it's better to know than stick your head in the sand. So I'll show you the PL/SQL code for of head-in-sand, and then discuss how to avoid it. Read the blog post, watch a short video, then dive into some quizzes to make sure you've got it down.

Suppress Row-level SQL Errors

#8 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management, a blog post first on the list of exercises for this workout. Usually it's all-rows or no-rows for a SQL DML statement, but you can change that! Read the blog post, watch a short video, then it's quiz time!

Application Specific Error Messages

#9 in Steven Feuerstein's list of Nine Good-to-Knows for PL/SQL Error Management blog post. Let's explore what you need to do to send an application-specific error message back to your users (what? They don't like reading "ORA-01403: no data found"?). Read the blog post, watch a short video, then it's quiz time! URL for blog post: http://stevenfeuersteinonplsql.blogspot.com/2016/03/nine-good-to-knows-about-plsql-error.html

Instructor

Instructor

About Steven Feuerstein

Steven Feuerstein is a Senior Advisor at Insum Solutions (https://insum.ca), and is obsessed with the Oracle PL/SQL language, having written ten books on it (all published by O'Reilly Media). You will find an abundance of quizzes from Steven at the Dev Gym. Enjoy!

More from Steven Feuerstein