compat_informix-rnull.c

来自「postgresql8.3.4源码,开源数据库」· C语言 代码 · 共 295 行

C
295
字号
/* Processed by ecpg (regression mode) *//* These include files are added by the preprocessor */#include <ecpgtype.h>#include <ecpglib.h>#include <ecpgerrno.h>#include <sqlca.h>/* Needed for informix compatibility */#include <ecpg_informix.h>/* End of automatic include section */#define ECPGdebug(X,Y) ECPGdebug((X)+100,(Y))#line 1 "rnull.pgc"#include "sqltypes.h"#include <stdlib.h>##line 1 "regression.h"#line 4 "rnull.pgc"static voidtest_null(int type, char *ptr){	printf("null: %d\n", risnull(type, ptr));}int main(void){	#line 15 "rnull.pgc" char  c []   = "abc" ;#line 15 "rnull.pgc"	#line 16 "rnull.pgc" short  s   = 17 ;#line 16 "rnull.pgc"	#line 17 "rnull.pgc" int  i   = - 74874 ;#line 17 "rnull.pgc"	#line 18 "rnull.pgc" bool  b   = 1 ;#line 18 "rnull.pgc"	#line 19 "rnull.pgc" float  f   = 3.71 ;#line 19 "rnull.pgc"	#line 20 "rnull.pgc" long  l   = 487444 ;#line 20 "rnull.pgc"	#line 21 "rnull.pgc" double  dbl   = 404.404 ;#line 21 "rnull.pgc"	#line 22 "rnull.pgc" decimal  dec    ;#line 22 "rnull.pgc"	#line 23 "rnull.pgc" date  dat    ;#line 23 "rnull.pgc"	#line 24 "rnull.pgc" timestamp  tmp    ;#line 24 "rnull.pgc"	ECPGdebug(1, stderr);	/* exec sql whenever sqlerror  do sqlprint (  ) ; */#line 27 "rnull.pgc"	{ ECPGconnect(__LINE__, 1, "regress1" , NULL, NULL , NULL, 0); #line 29 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 29 "rnull.pgc"	{ 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);#line 33 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 33 "rnull.pgc"	{ ECPGtrans(__LINE__, NULL, "commit");#line 34 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 34 "rnull.pgc"	{ 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  ) ", 	ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_short,&(s),(long)1,(long)1,sizeof(short), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_int,&(i),(long)1,(long)1,sizeof(int), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_float,&(f),(long)1,(long)1,sizeof(float), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_long,&(l),(long)1,(long)1,sizeof(long), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT);#line 38 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 38 "rnull.pgc"	{ ECPGtrans(__LINE__, NULL, "commit");#line 39 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 39 "rnull.pgc"	rsetnull(CCHARTYPE, (char *) c);	rsetnull(CSHORTTYPE, (char *) &s);	rsetnull(CINTTYPE, (char *) &i);	rsetnull(CBOOLTYPE, (char *) &b);	rsetnull(CFLOATTYPE, (char *) &f);	rsetnull(CLONGTYPE, (char *) &l);	rsetnull(CDOUBLETYPE, (char *) &dbl);	rsetnull(CDECIMALTYPE, (char *) &dec);	rsetnull(CDATETYPE, (char *) &dat);	rsetnull(CDTIMETYPE, (char *) &tmp);	{ 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  ) ", 	ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_short,&(s),(long)1,(long)1,sizeof(short), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_int,&(i),(long)1,(long)1,sizeof(int), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_float,&(f),(long)1,(long)1,sizeof(float), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_long,&(l),(long)1,(long)1,sizeof(long), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_date,&(dat),(long)1,(long)1,sizeof(date), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EOIT, ECPGt_EORT);#line 54 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 54 "rnull.pgc"	{ ECPGtrans(__LINE__, NULL, "commit");#line 55 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 55 "rnull.pgc"	printf("first select\n");	{ 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, 	ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_short,&(s),(long)1,(long)1,sizeof(short), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_int,&(i),(long)1,(long)1,sizeof(int), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_float,&(f),(long)1,(long)1,sizeof(float), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_long,&(l),(long)1,(long)1,sizeof(long), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_date,&(dat),(long)1,(long)1,sizeof(date), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);#line 61 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 61 "rnull.pgc"	test_null(CCHARTYPE, (char *) c);	test_null(CSHORTTYPE, (char *) &s);	test_null(CINTTYPE, (char *) &i);	test_null(CBOOLTYPE, (char *) &b);	test_null(CFLOATTYPE, (char *) &f);	test_null(CLONGTYPE, (char *) &l);	test_null(CDOUBLETYPE, (char *) &dbl);	test_null(CDECIMALTYPE, (char *) &dec);	test_null(CDATETYPE, (char *) &dat);	test_null(CDTIMETYPE, (char *) &tmp);	printf("second select\n");	{ 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, 	ECPGt_char,(c),(long)sizeof("abc"),(long)1,(sizeof("abc"))*sizeof(char), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_short,&(s),(long)1,(long)1,sizeof(short), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_int,&(i),(long)1,(long)1,sizeof(int), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_bool,&(b),(long)1,(long)1,sizeof(bool), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_float,&(f),(long)1,(long)1,sizeof(float), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_long,&(l),(long)1,(long)1,sizeof(long), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_double,&(dbl),(long)1,(long)1,sizeof(double), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_decimal,&(dec),(long)1,(long)1,sizeof(decimal), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_date,&(dat),(long)1,(long)1,sizeof(date), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, 	ECPGt_timestamp,&(tmp),(long)1,(long)1,sizeof(timestamp), 	ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);#line 78 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 78 "rnull.pgc"	test_null(CCHARTYPE, (char *) c);	test_null(CSHORTTYPE, (char *) &s);	test_null(CINTTYPE, (char *) &i);	test_null(CBOOLTYPE, (char *) &b);	test_null(CFLOATTYPE, (char *) &f);	test_null(CLONGTYPE, (char *) &l);	test_null(CDOUBLETYPE, (char *) &dbl);	test_null(CDECIMALTYPE, (char *) &dec);	test_null(CDATETYPE, (char *) &dat);	test_null(CDTIMETYPE, (char *) &tmp);	{ ECPGdo(__LINE__, 1, 0, NULL, 0, ECPGst_normal, "drop table test ", ECPGt_EOIT, ECPGt_EORT);#line 91 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 91 "rnull.pgc"	{ ECPGtrans(__LINE__, NULL, "commit");#line 92 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 92 "rnull.pgc"	{ ECPGdisconnect(__LINE__, "CURRENT");#line 94 "rnull.pgc"if (sqlca.sqlcode < 0) sqlprint (  );}#line 94 "rnull.pgc"	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?