SQL/MX Programming Manual for C and COBOL (G06.24+, H06.03+)

C Sample Programs
HP NonStop SQL/MX Programming Manual for C and COBOL523627-004
A-15
Using a Dynamic SQL Cursor
Using a Dynamic SQL Cursor
Using a Dynamic SQL Cursor
Example A-6 executes the steps shown in Figure 11-1 on page 11-2 and uses host
variable argument lists for the FETCH INTO statement.
Example A-6. Using a Dynamic SQL Cursor (page 1 of 3)
/* ---------------------------------------------------------
Description: Using a Dynamic SQL Cursor
Statements: PREPARE
Dynamic DECLARE CURSOR
OPEN
FETCH
CLOSE
WHENEVER
GET DIAGNOSTICS
------------------------------------------------------------ */
#include <stdio.h>
#include <string.h>
EXEC SQL MODULE EXF121M NAMES ARE ISO88591;
int main()
{
char SQLSTATE_OK[6]="00000";
char SQLSTATE_NODATA[6]="02000";
EXEC SQL BEGIN DECLARE SECTION;
char SQLSTATE[6];
unsigned NUMERIC (4) hv_partnum; /* Parts table */
char hv_partdesc[19];
NUMERIC (8,2) hv_price;
NUMERIC (5) hv_qty_available;
NUMERIC (5) in_qty_available; /* Input parameter */
char curspec[256]; /* Dynamic cursor spec */
long hv_num; /* Statement info */
long i; /* Used for condition loop */
char hv_sqlstate[6]; /* Condition info */
VARCHAR hv_tabname[129];
VARCHAR hv_colname[129];
VARCHAR hv_msgtxt[129];
EXEC SQL END DECLARE SECTION;