The names in the following table are those provided by the SQL INCLUDE statement. For the most part, C (and C++), COBOL, FORTRAN and PL/I use the same names. RPG names are different, because in RPG/400®, they are limited to 6 characters. In ILE RPG, both a long name and the short 6 character name is supported. Note one instance where PL/I names differ from the COBOL names.
C Name COBOL Name PL/I Name |
FORTRAN1 Name |
ILE RPG Name RPG/400 Name |
Field Data Type |
Field Value |
---|---|---|---|---|
SQLCAID sqlcaid | Not used SQLCAID | SQLCAID SQLAID | CHAR(8) | An "eye catcher" for storage dumps, containing 'SQLCA'. |
SQLCABC sqlcabc | Not used SQLCABC | SQLCABC SQLABC | INTEGER | Contains the length of the SQLCA, 136. |
SQLCODE sqlcode | SQLCOD SQLCODE | SQLCODE SQLCOD | INTEGER | Contains an SQL return code.
|
SQLERRML2 sqlerrml | SQLTXL SQLERRML | SQLERRML SQLERL | SMALLINT | Length indicator for SQLERRMC, in the range 0 through 70. 0 means that the value of SQLERRMC is not pertinent. |
SQLERRMC2 sqlerrmc | SQLTXT SQLERRMC | SQLERRMC SQLERM | CHAR (70) | Contains message replacement text associated with the SQLCODE. For CONNECT and SET CONNECTION, the SQLERRMC field contains information about the connection, see Table 91 for a description of the replacement text. |
SQLERRP sqlerrp | SQLERP SQLERRP | SQLERRP SQLERP | CHAR(8) | Contains the name of the product and module
returning the error or warning. The first three characters identify the product:
|
SQLERRD sqlerrd | SQLERR SQLERRD | SQLERRD SQLERR3 | Array | Contains six INTEGER variables that provide diagnostic information, see Table 90 for a description of the diagnostic information. |
SQLWARN sqlwarn | SQLWRN SQLWARN | SQLWARN SQLWRN4 | CHAR(11) | A set of 11 CHAR(1) warning indicators, each containing blank or 'W' or 'N'. |
SQLSTATE sqlstate | SQLSTT SQLSTATE | SQLSTATE SQLSTT | CHAR(5) | A return code that indicates the outcome of the most recently executed SQL statement. |
Notes:
|
C Name COBOL Name PL/I Name |
FORTRAN1 Name |
ILE RPG Name RPG/400 Name |
Field Value |
---|---|---|---|
SQLWARN0 sqlwarn[0] |
SQLWRN(0) SQLWARN(1:1) | SQLWARN(1) SQLWN0 | Contains 'W' if at least one other indicator contains 'W' or 'N', it is blank if all other indicators are blank. |
SQLWARN1 sqlwarn[1] |
SQLWRN(1) SQLWARN(2:2) | SQLWARN(2) SQLWN1 | Contains 'W' if the value of a string column was truncated when assigned to a host variable. Contains 'N' if *NOCNULRQD was specified an the CRTSQLCI or CRTSQLCPPI command (or CNULRQD(*NO) on the SET OPTION statement) and if the value of a string column was assigned to a C NUL-terminated host variable and if the host variable was large enough to contain the result but not large enough to contain the NUL-terminator. |
SQLWARN2 sqlwarn[2] |
SQLWRN(2) SQLWARN(3:3) | SQLWARN(3) SQLWN2 | Contains 'W' if the null values were eliminated from the argument of a function; not necessarily set to 'W' for the MIN function because its results are not dependent on the elimination of null values. |
SQLWARN3 sqlwarn[3] |
SQLWRN(3) SQLWARN(4:4) | SQLWARN(4) SQLWN3 | Contains 'W' if the number of columns is larger than the number of host variables. |
SQLWARN4 sqlwarn[4] |
SQLWRN(4) SQLWARN(5:5) | SQLWARN(5) SQLWN4 | Contains 'W' if a prepared UPDATE or DELETE statement does not include a WHERE clause. |
SQLWARN5 sqlwarn[5] |
SQLWRN(5) SQLWARN(6:6) | SQLWARN(6) SQLWN5 | Reserved |
SQLWARN6 sqlwarn[6] |
SQLWRN(6) SQLWARN(7:7) | SQLWARN(7) SQLWN6 | Contains 'W' if date arithmetic results in an end-of-month adjustment. |
SQLWARN7 sqlwarn[7] |
SQLWRN(7) SQLWARN(8:8) | SQLWARN(8) (SQLWN7 | Reserved |
SQLWARN8 sqlwarn[8] |
SQLWRX(1) SQLWARN(9:9) | SQLWARN(9) SQLWN8 | Contains 'W' if the result of a character conversion contains the substitution character. |
SQLWARN9 sqlwarn[9] |
SQLWRX(2) SQLWARN(10:10) | SQLWARN(10) SQLWN9 | Reserved |
SQLWARNA sqlwarn[10] |
SQLWRX(3) SQLWARN(11:11) | SQLWARN(11) SQLWNA | Reserved |
C Name COBOL Name PL/I Name |
FORTRAN1 Name |
ILE RPG Name RPG/400 Name |
Field Value |
---|---|---|---|
SQLERRD(1) sqlerrd[0] |
SQLERR(1) | SQLERRD(1) SQLER1 | Contains the last four characters of the
CPF escape message if SQLCODE is less than 0. For example, if the message
is CPF5715, X'F5F7F1F5' is placed in SQLERRD(1).1
For a call to a procedure, contains the return status value specified on the RETURN statement. If a return status value is not specified on the RETURN statement,
|
SQLERRD(2) sqlerrd[1] |
SQLERR(2) | SQLERRD(2) SQLER2 | Contains the last four characters of a CPD
diagnostic message if the SQL code is less than 0.1
For a CALL statement, SQLERRD(2) contains the number of result sets. For an OPEN statement, if the cursor is insensitive to changes, SQLERRD(2) contains the actual number of rows in the result set. If the cursor is sensitive to changes, SQLERRD(2) contains an estimated number of rows in the result set. |
SQLERRD(3) sqlerrd[2] |
SQLERR(3) | SQLERRD(3) SQLER3 | For a CONNECT for status statement, SQLERRD(3)
contains information on the connection status. See CONNECT (Type 2) for
more information.
For INSERT, UPDATE, REFRESH, and DELETE, shows the number of rows affected. For a FETCH statement, SQLERRD(3) contains the number of rows fetched. For the PREPARE statement, contains the estimated number of rows selected. If the number of rows is greater than 2 147 483 647, then 2 147 483 647 is returned. |
SQLERRD(4) sqlerrd[3] |
SQLERR(4) | SQLERRD(4) SQLER4 | For the PREPARE statement, contains a relative
number estimate of the resources required for every execution. This number
varies depending on the current availability of indexes, file sizes, CPU model,
etc. It is an estimated cost for the access plan chosen by the DB2 UDB for iSeries Query
Optimizer.
For a CONNECT and SET CONNECTION statement, SQLERRD(4) contains the type of conversation used and whether or not committable updates can be performed. See CONNECT (Type 2) for more information. For a CALL statement, SQLERRD(4) contains the message key of the error that caused the procedure to fail. The QMHRTVPM API can be used to return the message description for the message key. For a trigger error in a DELETE, INSERT or UPDATE statement, SQLERRD(4) contains the message key of the error that was signaled from the trigger program. The QMHRTVPM API can be used to return the message description for the message key. For a FETCH statement, SQLERRD(4) contains the length of the row retrieved. |
SQLERRD(5)
sqlerrd[4] |
SQLERR(5) | SQLERRD(5) SQLER5 | For a CALL statement, SQLERRD(5) contains
the number of result sets returned from the procedure.
For a CONNECT or SET CONNECTION statement, SQLERRD(5) contains:
For a DELETE statement, shows the number of rows affected by referential constraints. For an EXECUTE IMMEDIATE or PREPARE statement, may contain the position of a syntax error. For a multiple-row FETCH statement, SQLERRD(5) contains +100 if the last row currently in the table has been fetched. For a PREPARE statement, SQLERRD(5) contains the number of parameter markers in the prepared statement. |
SQLERRD(6) sqlerrd[5] |
SQLERR(6) | SQLERRD(6) SQLER6 | Contains the SQL completion message identifier
when the SQLCODE is 0.
In all other cases, it is undefined. |
Note:
|
Description | Data type |
---|---|
Relational Database Name | CHAR(18) |
Product Identification (same as SQLERRP) | CHAR(8) |
User ID of the server job | CHAR(10) |
Connection method (*DUW or *RUW) | CHAR(10) |
DDM server class name
|
CHAR(10) |
Connection type (same as SQLERRD(4)) | SMALLINT |