Rational Developer for System z
PL/I for Windows, Version 8.0, Programming Guide

Defining SQL descriptor areas

The following statements require an SQLDA:

Unlike the SQLCA, there can be more than one SQLDA in a program, and an SQLDA can have any valid name. An SQLDA should be included by using the SQL INCLUDE statement:

  exec sql include sqlda;

The SQLDA must not be defined within an SQL declare section.

Figure 2. The PL/I declaration of an SQL descriptor area
  Dcl
    1 Sqlda based(Sqldaptr),
      2 sqldaid     char(8),          /* Eye catcher = 'SQLDA   ' */
      2 sqldabc     fixed binary(31), /* SQLDA size in bytes=16+44*SQLN*/
      2 sqln        fixed binary(15), /* Number of SQLVAR elements*/
      2 sqld        fixed binary(15), /* # of used SQLVAR elements*/
      2 sqlvar(Sqlsize refer(sqln)),  /* Variable Description     */
        3 sqltype   fixed binary(15), /* Variable data type       */
        3 sqllen    fixed binary(15), /* Variable data length     */
        3 sqldata   pointer,          /* Pointer to variable data value*/
        3 sqlind    pointer,          /* Pointer to Null indicator*/
        3 sqlname   char(30) var ;    /* Variable Name            */
  dcl Sqlsize   fixed binary(15);     /* number of sqlvars (sqln) */
  dcl Sqldaptr  pointer;
Rational Developer for System z
PL/I for Windows, Version 8.0, Programming Guide