#include #include #include EXEC SQL INCLUDE ../regression; int main() { EXEC SQL BEGIN DECLARE SECTION; char str[25]; int i, count=1, loopcount; EXEC SQL END DECLARE SECTION; ECPGdebug(1, stderr); EXEC SQL CONNECT TO REGRESSDB1; EXEC SQL WHENEVER SQLWARNING SQLPRINT; EXEC SQL WHENEVER SQLERROR STOP; EXEC SQL CREATE TABLE My_Table ( Item1 int, Item2 text ); EXEC SQL INSERT INTO My_Table VALUES ( 1, 'text1'); EXEC SQL INSERT INTO My_Table VALUES ( 2, 'text2'); EXEC SQL INSERT INTO My_Table VALUES ( 3, 'text3'); EXEC SQL INSERT INTO My_Table VALUES ( 4, 'text4'); EXEC SQL DECLARE C CURSOR FOR SELECT * FROM My_Table; EXEC SQL OPEN C; EXEC SQL WHENEVER NOT FOUND DO BREAK; for (loopcount = 0; loopcount < 100; loopcount++) { EXEC SQL FETCH 1 IN C INTO :i, :str; printf("%d: %s\n", i, str); } EXEC SQL WHENEVER NOT FOUND CONTINUE; EXEC SQL MOVE BACKWARD 2 IN C; EXEC SQL FETCH :count IN C INTO :i, :str; printf("%d: %s\n", i, str); EXEC SQL CLOSE C; EXEC SQL DECLARE D CURSOR FOR SELECT * FROM My_Table WHERE Item1 = $1; EXEC SQL OPEN D using 1; EXEC SQL FETCH 1 IN D INTO :i, :str; printf("%d: %s\n", i, str); EXEC SQL CLOSE D; EXEC SQL DROP TABLE My_Table; EXEC SQL DISCONNECT ALL; return 0; }