diff options
Diffstat (limited to 'src/interfaces/ecpg/test/expected/preproc-autoprep.c')
-rw-r--r-- | src/interfaces/ecpg/test/expected/preproc-autoprep.c | 256 |
1 files changed, 256 insertions, 0 deletions
diff --git a/src/interfaces/ecpg/test/expected/preproc-autoprep.c b/src/interfaces/ecpg/test/expected/preproc-autoprep.c new file mode 100644 index 0000000..8ed5a2c --- /dev/null +++ b/src/interfaces/ecpg/test/expected/preproc-autoprep.c @@ -0,0 +1,256 @@ +/* Processed by ecpg (regression mode) */ +/* These include files are added by the preprocessor */ +#include <ecpglib.h> +#include <ecpgerrno.h> +#include <sqlca.h> +/* End of automatic include section */ +#define ECPGdebug(X,Y) ECPGdebug((X)+100,(Y)) + +#line 1 "autoprep.pgc" +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +/* test automatic prepare for all statements */ + +#line 1 "regression.h" + + + + + + +#line 6 "autoprep.pgc" + + +static void test(void) { + /* 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, "ecpg1_regression" , 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 (i < 100) + { + { 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" + +} + +int main() { + test(); + test(); /* retry */ + + return 0; +} |