Programs calling a database which accords to the SQL standard receive an indication about the success or failure of the call. This return code - which is called SQLSTATE - consists of 5 byte. They are divided into two parts: the first and second byte contains a class and the following three a subclass. Each class belongs to one of four categories: "S" denotes "Success" (class 00), "W" denotes "Warning" (class 01), "N" denotes "No data" (class 02) and "X" denotes "Exception" (all other classes).
- Real DBMS may define additional values for SQLCODE to handle those features which are beyond the standard. Such implementation dependent values must contain one of the characters [I-Z] or [5-9] in the first byte of class (1. byte of SQLSTATE) or subclass (3. byte of SQLSTATE).
- In addition to SQLCODE the SQL command
GET DIAGNOSTICS
offers more details about the last executed SQL command. - In very early versions of the SQL standard the return code was called SQLCODE and used a different coding schema.
The following table lists the standard-conforming values - based on SQL:2011. The table's last column shows that part of the standard, which defines the row. If it is empty, the definition origins from part 2 Foundation.
Source of the article : Wikipedia