/*-------------------------------------------------------------------- * Very simple example Pro*C program to fetch multiple records * from database * Frank Naude - Sep 2000 *-------------------------------------------------------------------- */ #include #include void sqlerror(); EXEC SQL BEGIN DECLARE SECTION; char *connstr = "scott/tiger"; char db_ename[30]; int db_deptno; EXEC SQL END DECLARE SECTION; void main() { EXEC SQL WHENEVER SQLERROR DO sqlerror(); EXEC SQL WHENEVER SQLWARNING CONTINUE; EXEC SQL CONNECT :connstr; EXEC SQL DECLARE emp_cursor CURSOR FOR SELECT ENAME, DEPTNO FROM EMP; EXEC SQL OPEN emp_cursor; EXEC SQL WHENEVER NOT FOUND DO break; for (;;) { EXEC SQL FETCH emp_cursor INTO :db_ename, :db_deptno; printf("\t%s\t%i\n", db_ename, db_deptno); } EXEC SQL CLOSE emp_cursor; EXEC SQL COMMIT WORK RELEASE; return; } void sqlerror() { printf("Stop Error:\t%25i\n", sqlca.sqlcode); EXEC SQL WHENEVER SQLERROR CONTINUE; EXEC SQL ROLLBACK WORK RELEASE; return; }