describe output (SQLDA)

Description

Obtains row format information about the result set of a prepared dynamic SQL statement and stores that information in a SQLDA structure.

Syntax

exec sql describe [output] statement_name 
 using descriptor sqlda_name end-exec

Parameters

output

An optional keyword that has no effect on the describe output statement but provides conformance to the SQL standard.

statement_name

The name (specified in a prepare statement) that represents the select statement to be executed.

descriptor

Identifies descriptor_name as a SQLDA structure.

sqlda_name

The name of a SQLDA structure that is to store the information returned by the describe output statement:

Examples

Example 1

      EXEC SQL BEGIN DECLARE SECTION END-EXEC.
             01      QUERY          PIC X(100).
             01      CHARVAR        PIC X(100).
       EXEC SQL END DECLARE SECTION END-EXEC.
 
       01      dout.
                         05 SD-SQLN      PIC S9(4) COMP.
                         05 SD-SQLD      PIC S9(4) COMP.
                         05 SD-COLUMN OCCURS 3 TIMES.
                         10 SD-DATAFMT.
                            15 SQL--NM        PIC X(132).
                            15 SQL--NMLEN     PIC S9(9) COMP.
                            15 SQL--DATATYPE  PIC s9(9) COMP.
                            15 SQL--FORMAT     PIC S9(9) COMP.
                            15 SQL--MAXLENGTH  PIC S9(9) COMP.
                            15 SQL--SCALE      PIC S9(9) COMP.
                            15 SQL--PRECISION  PIC S9(9) COMP.
                            15 SQL--STTUS      PIC S9(9) COMP.
                            15 SQL--COUNT      PIC S9(9) COMP.
                            15 SQL--USERTYPE   PIC S9(9) COMP.
                            15 SQL--LOCALE     PIC S9(9) COMP.

                         10 SD-SQLDATA    PIC S9(9) COMP.
                         10 SD-SQLIND     PIC S9(9) COMP.
                         10 SD-SQLLEN     PIC S9(9) COMP.
                         10 SD-SQLMORE    PIC S9(9) COMP.
         01      TMP                 PIC Z(8)9.
         01      COLNUM              PIC S9(9) COMP.
         01      TMP1                PIC S9(9) COMP.
         01      TMP2                PIC S9(9) COMP.
         01      RETCODE             PIC S9(9) COMP.
 
             ...
 
 
       DISPLAY "ENTER QUERY :"
       ACCEPT QUERY.
 
       EXEC SQL ALLOCATE DESCRIPTOR dout WITH MAX 256 END-EXEC.
       EXEC SQL PREPARE dynstmt FROM :QUERY END-EXEC.
       EXEC SQL DECLARE selcursor CURSOR FOR dynstmt END-EXEC.
       EXEC SQL OPEN selcursor END-EXEC.
       EXEC SQL DESCRIBE OUTPUT dynstmt 
                     USING DESCRIPTOR dout END-EXEC.
 
       MOVE 1  TO COLNUM.
       MOVE 25 TO TMP1.
       MOVE 0  TO TMP2.
 
       CALL "SYBSETSQLDA" USING RETCODE dout COLNUM
             CHARVAR SYB-X-PIC TMP1 TMP2 SYB-NO-USAGE
                   SYB-NO-SIGN.
 
       EXEC SQL FETCH selcursor INTO DESCRIPTOR dout END-EXEC.
       DISPLAY "CHARVAR = ", CHARVAR.
 
       EXEC SQL CLOSE selcursor END-EXEC.
       EXEC SQL DEALLOCATE CURSOR selcursor END-EXEC.
       EXEC SQL DEALLOCATE PREPARE dynstmt END-EXEC.
       EXEC SQL DEALLOCATE DESCRIPTOR dout END-EXEC.

Usage

See also

describe input, execute, prepare