DB2: What does the error code mean?

Sometimes I run into a DB2 error that I don’t know or there is a reason code given for which I don’t know what it means. Of course, going to the DB2 Information Center and searching for, e.g., SQL5099N, is a solution. However, I am not always online or have a local copy of the Information Center available. But there is a simple solution close by: DB2 itself.

When you use the DB2 Command Line Processor (CLP), there is a small help section (try the “?”). Typing in the question mark and the error code, DB2 reveals the full error message including an explanation of reason codes and the so-called user response.

db2 “? sql5099n”

SQL5099N  The value "" indicated by the database configuration

      parameter "" is not valid, reason code “”.

Explanation:

The value of the named parameter is not valid for one of the following

reasons:

 …

The requested change is not made.
User response: 
Resubmit the command with a valid value for the named parameter.
sqlcode: -5099
sqlstate: 08004

Life can be easy, even (especially?) when offline…