Wednesday, June 8, 2011

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...