2007-01-11 15:47:34 +00:00
/* Processed by ecpg (regression mode) */
2006-08-02 14:14:04 +00:00
/* These include files are added by the preprocessor */
# include <ecpglib.h>
# include <ecpgerrno.h>
# include <sqlca.h>
/* End of automatic include section */
2007-01-12 10:00:14 +00:00
# define ECPGdebug(X,Y) ECPGdebug((X)+100,(Y))
2006-08-02 14:14:04 +00:00
# line 1 "dynalloc.pgc"
# include <stdio.h>
2006-08-29 13:23:27 +00:00
# line 1 "sqlca.h"
2006-08-02 14:14:04 +00:00
# ifndef POSTGRES_SQLCA_H
# define POSTGRES_SQLCA_H
2007-07-25 12:22:54 +00:00
# ifndef PGDLLIMPORT
2006-08-02 14:14:04 +00:00
# if defined(WIN32) || defined(__CYGWIN__)
2007-07-25 12:22:54 +00:00
# define PGDLLIMPORT __declspec (dllimport)
2006-08-02 14:14:04 +00:00
# else
2007-07-25 12:22:54 +00:00
# define PGDLLIMPORT
2006-08-02 14:14:04 +00:00
# endif /* __CYGWIN__ */
2007-07-25 12:22:54 +00:00
# endif /* PGDLLIMPORT */
2006-08-02 14:14:04 +00:00
# define SQLERRMC_LEN 150
# ifdef __cplusplus
extern " C "
{
# endif
struct sqlca_t
{
char sqlcaid [ 8 ] ;
long sqlabc ;
long sqlcode ;
struct
{
int sqlerrml ;
char sqlerrmc [ SQLERRMC_LEN ] ;
} sqlerrm ;
char sqlerrp [ 8 ] ;
long sqlerrd [ 6 ] ;
/* Element 0: empty */
/* 1: OID of processed tuple if applicable */
/* 2: number of rows processed */
/* after an INSERT, UPDATE or */
/* DELETE statement */
/* 3: empty */
/* 4: empty */
/* 5: empty */
char sqlwarn [ 8 ] ;
/* Element 0: set to 'W' if at least one other is 'W' */
/* 1: if 'W' at least one character string */
/* value was truncated when it was */
/* stored into a host variable. */
/*
* 2 : if ' W ' a ( hopefully ) non - fatal notice occurred
*/ /* 3: empty */
/* 4: empty */
/* 5: empty */
/* 6: empty */
/* 7: empty */
char sqlstate [ 5 ] ;
} ;
struct sqlca_t * ECPGget_sqlca ( void ) ;
# ifndef POSTGRES_ECPG_INTERNAL
# define sqlca (*ECPGget_sqlca())
# endif
# ifdef __cplusplus
}
# endif
2006-10-04 10:09:03 +00:00
2006-08-02 14:14:04 +00:00
# endif
# line 2 "dynalloc.pgc"
# include <stdlib.h>
2006-08-29 13:23:27 +00:00
# line 1 "regression.h"
2006-08-02 14:14:04 +00:00
# line 4 "dynalloc.pgc"
2006-10-04 10:09:03 +00:00
int main ( void )
2006-08-02 14:14:04 +00:00
{
2006-10-04 10:09:03 +00:00
/* exec sql begin declare section */
/* char **d8=0; */
/* int *i8=0; */
2006-08-02 14:14:04 +00:00
# line 9 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * d1 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-02 14:14:04 +00:00
# line 10 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
double * d2 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-02 14:14:04 +00:00
# line 11 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d3 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 12 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d4 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 13 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d5 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 14 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d6 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 15 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d7 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 17 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
char * * d9 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 18 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i1 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 19 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i2 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 20 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i3 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 21 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i4 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 22 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i5 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 23 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i6 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 24 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i7 = 0 ;
2006-10-04 10:09:03 +00:00
2006-08-03 13:11:04 +00:00
# line 26 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
int * i9 = 0 ;
2006-08-03 13:11:04 +00:00
/* exec sql end declare section */
# line 27 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
int i ;
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
ECPGdebug ( 1 , stderr ) ;
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
/* exec sql whenever sqlerror do sqlprint ( ) ; */
2006-08-03 13:11:04 +00:00
# line 32 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2007-03-17 19:25:24 +00:00
{ ECPGconnect ( __LINE__ , 0 , " regress1 " , NULL , NULL , NULL , 0 ) ;
2006-08-03 13:11:04 +00:00
# line 33 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-03 13:11:04 +00:00
# line 33 "dynalloc.pgc"
2007-08-14 10:32:47 +00:00
{ ECPGdo ( __LINE__ , 0 , 1 , NULL , 0 , ECPGst_normal , " set datestyle to mdy " , ECPGt_EOIT , ECPGt_EORT ) ;
2006-08-03 13:11:04 +00:00
# line 35 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-03 13:11:04 +00:00
# line 35 "dynalloc.pgc"
2006-08-19 13:42:40 +00:00
2008-12-29 17:07:06 +00:00
{ ECPGdo ( __LINE__ , 0 , 1 , NULL , 0 , ECPGst_normal , " create table test ( a serial , b numeric ( 12 , 3 ) , c varchar , d varchar ( 3 ) , e char ( 4 ) , f timestamptz , g boolean , h box , i inet ) " , ECPGt_EOIT , ECPGt_EORT ) ;
2006-08-19 13:42:40 +00:00
# line 37 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 37 "dynalloc.pgc"
2008-12-29 17:07:06 +00:00
{ ECPGdo ( __LINE__ , 0 , 1 , NULL , 0 , ECPGst_normal , " insert into test ( b , c , d , e , f , g , h , i ) values ( 23.456 , 'varchar' , 'v' , 'c' , '2003-03-03 12:33:07 PDT' , true , '(1,2,3,4)' , '2001:4f8:3:ba:2e0:81ff:fe22:d1f1/128' ) " , ECPGt_EOIT , ECPGt_EORT ) ;
2006-08-19 13:42:40 +00:00
# line 38 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 38 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
{ ECPGdo ( __LINE__ , 0 , 1 , NULL , 0 , ECPGst_normal , " insert into test ( b , c , d , e , f , g , h , i ) values ( 2.446456 , null , 'v' , 'c' , '2003-03-03 12:33:07 PDT' , false , null , null ) " , ECPGt_EOIT , ECPGt_EORT ) ;
2006-08-19 13:42:40 +00:00
# line 39 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 39 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
ECPGallocate_desc ( __LINE__ , " mydesc " ) ;
2006-08-19 13:42:40 +00:00
# line 41 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ;
2006-08-19 13:42:40 +00:00
# line 41 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
{ ECPGdo ( __LINE__ , 0 , 1 , NULL , 0 , ECPGst_normal , " select a , b , c , d , e , f , g , h , i from test order by a " , ECPGt_EOIT ,
2006-10-04 10:09:03 +00:00
ECPGt_descriptor , " mydesc " , 0L , 0L , 0L ,
ECPGt_NO_INDICATOR , NULL , 0L , 0L , 0L , ECPGt_EORT ) ;
2006-08-19 13:42:40 +00:00
# line 42 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 42 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 1 , ECPGd_indicator ,
ECPGt_int , & ( i1 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_int , & ( d1 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_EODT ) ;
2006-08-02 14:14:04 +00:00
2006-08-19 13:42:40 +00:00
# line 43 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 43 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 2 , ECPGd_indicator ,
ECPGt_int , & ( i2 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_double , & ( d2 ) , ( long ) 1 , ( long ) 0 , sizeof ( double ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 44 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 44 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 3 , ECPGd_indicator ,
ECPGt_int , & ( i3 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d3 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 45 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 45 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 4 , ECPGd_indicator ,
ECPGt_int , & ( i4 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d4 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 46 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 46 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 5 , ECPGd_indicator ,
ECPGt_int , & ( i5 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d5 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 47 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 47 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 6 , ECPGd_indicator ,
ECPGt_int , & ( i6 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d6 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-02 14:14:04 +00:00
2006-08-19 13:42:40 +00:00
# line 48 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 48 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGget_desc ( __LINE__ , " mydesc " , 7 , ECPGd_indicator ,
ECPGt_int , & ( i7 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d7 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 49 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 49 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
/* skip box for now */
/* exec sql get descriptor mydesc value 8 :d8=DATA, :i8=INDICATOR; */
{ ECPGget_desc ( __LINE__ , " mydesc " , 9 , ECPGd_indicator ,
ECPGt_int , & ( i9 ) , ( long ) 1 , ( long ) 0 , sizeof ( int ) , ECPGd_data ,
ECPGt_char , & ( d9 ) , ( long ) 0 , ( long ) 0 , ( 1 ) * sizeof ( char ) , ECPGd_EODT ) ;
2006-08-03 13:11:04 +00:00
2006-08-19 13:42:40 +00:00
# line 52 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 52 "dynalloc.pgc"
2006-08-03 13:11:04 +00:00
2006-10-04 10:09:03 +00:00
printf ( " Result: \n " ) ;
for ( i = 0 ; i < sqlca . sqlerrd [ 2 ] ; + + i )
{
if ( i1 [ i ] ) printf ( " NULL, " ) ;
else printf ( " %d, " , d1 [ i ] ) ;
if ( i2 [ i ] ) printf ( " NULL, " ) ;
else printf ( " %f, " , d2 [ i ] ) ;
if ( i3 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d3 [ i ] ) ;
if ( i4 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d4 [ i ] ) ;
if ( i5 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d5 [ i ] ) ;
if ( i6 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d6 [ i ] ) ;
if ( i7 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d7 [ i ] ) ;
if ( i9 [ i ] ) printf ( " NULL, " ) ;
else printf ( " '%s', " , d9 [ i ] ) ;
printf ( " \n " ) ;
}
ECPGfree_auto_mem ( ) ;
printf ( " \n " ) ;
ECPGdeallocate_desc ( __LINE__ , " mydesc " ) ;
2006-08-19 13:42:40 +00:00
# line 86 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ;
2006-08-19 13:42:40 +00:00
# line 86 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
{ ECPGdisconnect ( __LINE__ , " CURRENT " ) ;
2006-08-19 13:42:40 +00:00
# line 87 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2008-12-29 17:07:06 +00:00
if ( sqlca . sqlcode < 0 ) sqlprint ( ) ; }
2006-08-19 13:42:40 +00:00
# line 87 "dynalloc.pgc"
2006-08-02 14:14:04 +00:00
2006-10-04 10:09:03 +00:00
return 0 ;
2006-08-02 14:14:04 +00:00
}