Even if you write such amazing code that it contains no errors and never acts inappropriately, your users might still use your program incorrectly. The result? Situations that cause programs to fail. PL/SQL provides exceptions, a flexible and powerful architecture that raises, traps, and handles errors.
Before getting into specific best practices, you should be sure to understand how exception handling works. For example, remember that an exception section handles only errors raised in the executable section of the block, not errors raised in the declaration section.
Next and even more important, I offer the following meta-best practice of this chapter.