1
/* Processed by ecpg (regression mode) */
2
/* These include files are added by the preprocessor */
6
/* Needed for informix compatibility */
7
#include <ecpg_informix.h>
8
/* End of automatic include section */
9
#define ECPGdebug(X,Y) ECPGdebug((X)+100,(Y))
16
#line 1 "regression.h"
28
test_null(int type, char *ptr)
30
printf("null: %d\n", risnull(type, ptr));
73
double dbl = 404.404 ;
97
/* exec sql whenever sqlerror do sqlprint ( ) ; */
101
{ ECPGconnect(__LINE__, 1, "regress1" , NULL, NULL , NULL, 0);
104
if (sqlca.sqlcode < 0) sqlprint ( );}
108
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "create table test ( id int , c char ( 10 ) , s smallint , i int , b bool , f float , l bigint , dbl double precision , dec decimal , dat date , tmp timestamptz )", ECPGt_EOIT, ECPGt_EORT);
111
if (sqlca.sqlcode < 0) sqlprint ( );}
114
{ ECPGtrans(__LINE__, NULL, "commit");
117
if (sqlca.sqlcode < 0) sqlprint ( );}
121
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "insert into test ( id , c , s , i , b , f , l , dbl ) values ( 1 , $1 , $2 , $3 , $4 , $5 , $6 , $7 )",
122
ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char),
123
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
124
ECPGt_short,&(s),(long)1,(long)1,sizeof(short),
125
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
126
ECPGt_int,&(i),(long)1,(long)1,sizeof(int),
127
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
128
ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool),
129
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
130
ECPGt_float,&(f),(long)1,(long)1,sizeof(float),
131
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
132
ECPGt_long,&(l),(long)1,(long)1,sizeof(long),
133
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
134
ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double),
135
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT);
138
if (sqlca.sqlcode < 0) sqlprint ( );}
141
{ ECPGtrans(__LINE__, NULL, "commit");
144
if (sqlca.sqlcode < 0) sqlprint ( );}
148
rsetnull(CCHARTYPE, (char *) c);
149
rsetnull(CSHORTTYPE, (char *) &s);
150
rsetnull(CINTTYPE, (char *) &i);
151
rsetnull(CBOOLTYPE, (char *) &b);
152
rsetnull(CFLOATTYPE, (char *) &f);
153
rsetnull(CLONGTYPE, (char *) &l);
154
rsetnull(CDOUBLETYPE, (char *) &dbl);
155
rsetnull(CDECIMALTYPE, (char *) &dec);
156
rsetnull(CDATETYPE, (char *) &dat);
157
rsetnull(CDTIMETYPE, (char *) &tmp);
159
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "insert into test ( id , c , s , i , b , f , l , dbl , dec , dat , tmp ) values ( 2 , $1 , $2 , $3 , $4 , $5 , $6 , $7 , $8 , $9 , $10 )",
160
ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char),
161
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
162
ECPGt_short,&(s),(long)1,(long)1,sizeof(short),
163
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
164
ECPGt_int,&(i),(long)1,(long)1,sizeof(int),
165
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
166
ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool),
167
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
168
ECPGt_float,&(f),(long)1,(long)1,sizeof(float),
169
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
170
ECPGt_long,&(l),(long)1,(long)1,sizeof(long),
171
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
172
ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double),
173
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
174
ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal),
175
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
176
ECPGt_date,&(dat),(long)1,(long)1,sizeof(date),
177
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
178
ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp),
179
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT);
182
if (sqlca.sqlcode < 0) sqlprint ( );}
185
{ ECPGtrans(__LINE__, NULL, "commit");
188
if (sqlca.sqlcode < 0) sqlprint ( );}
192
printf("first select\n");
194
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "select c , s , i , b , f , l , dbl , dec , dat , tmp from test where id = 1", ECPGt_EOIT,
195
ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char),
196
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
197
ECPGt_short,&(s),(long)1,(long)1,sizeof(short),
198
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
199
ECPGt_int,&(i),(long)1,(long)1,sizeof(int),
200
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
201
ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool),
202
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
203
ECPGt_float,&(f),(long)1,(long)1,sizeof(float),
204
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
205
ECPGt_long,&(l),(long)1,(long)1,sizeof(long),
206
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
207
ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double),
208
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
209
ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal),
210
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
211
ECPGt_date,&(dat),(long)1,(long)1,sizeof(date),
212
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
213
ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp),
214
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);
217
if (sqlca.sqlcode < 0) sqlprint ( );}
221
test_null(CCHARTYPE, (char *) c);
222
test_null(CSHORTTYPE, (char *) &s);
223
test_null(CINTTYPE, (char *) &i);
224
test_null(CBOOLTYPE, (char *) &b);
225
test_null(CFLOATTYPE, (char *) &f);
226
test_null(CLONGTYPE, (char *) &l);
227
test_null(CDOUBLETYPE, (char *) &dbl);
228
test_null(CDECIMALTYPE, (char *) &dec);
229
test_null(CDATETYPE, (char *) &dat);
230
test_null(CDTIMETYPE, (char *) &tmp);
232
printf("second select\n");
234
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "select c , s , i , b , f , l , dbl , dec , dat , tmp from test where id = 2", ECPGt_EOIT,
235
ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char),
236
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
237
ECPGt_short,&(s),(long)1,(long)1,sizeof(short),
238
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
239
ECPGt_int,&(i),(long)1,(long)1,sizeof(int),
240
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
241
ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool),
242
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
243
ECPGt_float,&(f),(long)1,(long)1,sizeof(float),
244
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
245
ECPGt_long,&(l),(long)1,(long)1,sizeof(long),
246
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
247
ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double),
248
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
249
ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal),
250
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
251
ECPGt_date,&(dat),(long)1,(long)1,sizeof(date),
252
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
253
ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp),
254
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);
257
if (sqlca.sqlcode < 0) sqlprint ( );}
261
test_null(CCHARTYPE, (char *) c);
262
test_null(CSHORTTYPE, (char *) &s);
263
test_null(CINTTYPE, (char *) &i);
264
test_null(CBOOLTYPE, (char *) &b);
265
test_null(CFLOATTYPE, (char *) &f);
266
test_null(CLONGTYPE, (char *) &l);
267
test_null(CDOUBLETYPE, (char *) &dbl);
268
test_null(CDECIMALTYPE, (char *) &dec);
269
test_null(CDATETYPE, (char *) &dat);
270
test_null(CDTIMETYPE, (char *) &tmp);
272
{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "drop table test", ECPGt_EOIT, ECPGt_EORT);
275
if (sqlca.sqlcode < 0) sqlprint ( );}
278
{ ECPGtrans(__LINE__, NULL, "commit");
281
if (sqlca.sqlcode < 0) sqlprint ( );}
285
{ ECPGdisconnect(__LINE__, "CURRENT");
288
if (sqlca.sqlcode < 0) sqlprint ( );}