SQL/MX 2.x Reference Manual (H06.04+)

Embedded-Only SQL/MX Statements
HP NonStop SQL/MX Reference Manual540440-003
3-26
COBOL Examples of DECLARE CURSOR
This SQL statement defines a dynamic updatable cursor:
EXEC SQL BEGIN DECLARE SECTION;
char query[50];
...
EXEC SQL END DECLARE SECTION;
...
strcpy(query,"SELECT COL1, COL2, COL3, COL4"
" FROM SALES.PARTS");
...
EXEC SQL PREPARE curspec FROM :query;
...
EXEC SQL DECLARE getparts CURSOR FOR curspec;
COBOL Examples of DECLARE CURSOR
This SQL statement defines a static read-only cursor:
EXEC SQL DECLARE cursor1 CURSOR FOR
SELECT COL1, COL2, COL3, COL4 FROM SALES.PARTS
WHERE COL2 >= :hostvar2
READ UNCOMMITTED ACCESS
ORDER BY COL2
END-EXEC.
This SQL statement defines a static updatable cursor. The FOR UPDATE clause
lists the columns to be updated:
EXEC SQL DECLARE cursor1 CURSOR FOR
SELECT COL1, COL2, COL3, COL4 FROM SALES.PARTS
WHERE COL2 >= :hostvar2
READ COMMITTED ACCESS
FOR UPDATE OF COL2, COL3, COL4
END-EXEC.
This SQL statement defines a dynamic updatable cursor:
EXEC SQL BEGIN DECLARE SECTION END-EXEC.
01 query pic x(50).
...
EXEC SQL END DECLARE SECTION END-EXEC.
...
MOVE "SELECT COL1, COL2, COL3, COL4 FROM SALES.PARTS"
TO query.
...
EXEC SQL PREPARE curspec FROM :query END-EXEC.
...
EXEC SQL DECLARE getparts CURSOR FOR curspec END-EXEC.