#include <ecpglib.h>
#include <ecpgerrno.h>
#include <sqlca.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Defines | |
#define | ECPGdebug(X, Y) ECPGdebug((X)+100,(Y)) |
Functions | |
static void | test (void) |
int | main () |
#define ECPGdebug | ( | X, | ||
Y | ||||
) | ECPGdebug((X)+100,(Y)) |
Definition at line 7 of file preproc-autoprep.c.
int main | ( | void | ) |
Definition at line 251 of file preproc-autoprep.c.
References test().
static void test | ( | void | ) | [static] |
Definition at line 26 of file preproc-autoprep.c.
References ECPG_NOT_FOUND, ECPGconnect(), ECPGdebug, ECPGdisconnect(), ECPGdo(), ECPGprepare(), ECPGprepared_statement(), ECPGst_execute, ECPGst_normal, ECPGst_prepnormal, ECPGt_char_variable, ECPGt_EOIT, ECPGt_EORT, ECPGt_int, ECPGt_NO_INDICATOR, i, NULL, sqlca, and sqlprint().
Referenced by main(), and run_schedule().
{ /* exec sql begin declare section */ #line 10 "autoprep.pgc" int item [ 4 ] , ind [ 4 ] , i = 1 ; #line 11 "autoprep.pgc" int item1 , ind1 ; #line 12 "autoprep.pgc" char sqlstr [ 64 ] = "SELECT item2 FROM T ORDER BY item2 NULLS LAST" ; /* exec sql end declare section */ #line 13 "autoprep.pgc" ECPGdebug(1, stderr); { ECPGconnect(__LINE__, 0, "regress1" , NULL, NULL , NULL, 0); } #line 16 "autoprep.pgc" /* exec sql whenever sql_warning sqlprint ; */ #line 18 "autoprep.pgc" /* exec sql whenever sqlerror sqlprint ; */ #line 19 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "create table T ( Item1 int , Item2 int )", ECPGt_EOIT, ECPGt_EORT); #line 21 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 21 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 21 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_prepnormal, "insert into T values ( 1 , null )", ECPGt_EOIT, ECPGt_EORT); #line 23 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 23 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 23 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_prepnormal, "insert into T values ( 1 , $1 )", ECPGt_int,&(i),(long)1,(long)1,sizeof(int), ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT); #line 24 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 24 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 24 "autoprep.pgc" i++; { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_prepnormal, "insert into T values ( 1 , $1 )", ECPGt_int,&(i),(long)1,(long)1,sizeof(int), ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT); #line 26 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 26 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 26 "autoprep.pgc" { ECPGprepare(__LINE__, NULL, 0, "i", " insert into T values ( 1 , 2 ) "); #line 27 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 27 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 27 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_execute, "i", ECPGt_EOIT, ECPGt_EORT); #line 28 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 28 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 28 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_prepnormal, "select Item2 from T order by Item2 nulls last", ECPGt_EOIT, ECPGt_int,(item),(long)1,(long)4,sizeof(int), ECPGt_int,(ind),(long)1,(long)4,sizeof(int), ECPGt_EORT); #line 30 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 30 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 30 "autoprep.pgc" for (i=0; i<4; i++) printf("item[%d] = %d\n", i, ind[i] ? -1 : item[i]); /* declare C cursor for select Item1 from T */ #line 35 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "declare C cursor for select Item1 from T", ECPGt_EOIT, ECPGt_EORT); #line 37 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 37 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 37 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "fetch 1 in C", ECPGt_EOIT, ECPGt_int,&(i),(long)1,(long)1,sizeof(int), ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT); #line 39 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 39 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 39 "autoprep.pgc" printf("i = %d\n", i); { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "close C", ECPGt_EOIT, ECPGt_EORT); #line 42 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 42 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 42 "autoprep.pgc" { ECPGprepare(__LINE__, NULL, 0, "stmt1", sqlstr); #line 44 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 44 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 44 "autoprep.pgc" /* declare cur1 cursor for $1 */ #line 46 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "declare cur1 cursor for $1", ECPGt_char_variable,(ECPGprepared_statement(NULL, "stmt1", __LINE__)),(long)1,(long)1,(1)*sizeof(char), ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT); #line 48 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 48 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 48 "autoprep.pgc" /* exec sql whenever not found break ; */ #line 50 "autoprep.pgc" i = 0; while (1) { { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "fetch cur1", ECPGt_EOIT, ECPGt_int,&(item1),(long)1,(long)1,sizeof(int), ECPGt_int,&(ind1),(long)1,(long)1,sizeof(int), ECPGt_EORT); #line 55 "autoprep.pgc" if (sqlca.sqlcode == ECPG_NOT_FOUND) break; #line 55 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 55 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 55 "autoprep.pgc" printf("item[%d] = %d\n", i, ind1 ? -1 : item1); i++; } { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "close cur1", ECPGt_EOIT, ECPGt_EORT); #line 60 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 60 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 60 "autoprep.pgc" { ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "drop table T", ECPGt_EOIT, ECPGt_EORT); #line 62 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 62 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 62 "autoprep.pgc" { ECPGdisconnect(__LINE__, "ALL"); #line 64 "autoprep.pgc" if (sqlca.sqlwarn[0] == 'W') sqlprint(); #line 64 "autoprep.pgc" if (sqlca.sqlcode < 0) sqlprint();} #line 64 "autoprep.pgc" }