1exec sql include sqlca;
2exec sql include ../regression;
3exec sql define STR 'abcdef';
4exec sql define INSERTNULL 1;
5exec sql define NUMBER 29;
6
7int main(void)
8{
9   exec sql begin declare section;
10     int i;
11     char s[200];
12   exec sql end declare section;
13
14   ECPGdebug(1, stderr);
15
16   exec sql whenever sqlerror do sqlprint();
17   exec sql connect to REGRESSDB1;
18
19   exec sql create table test (a int, b text);
20   exec sql insert into test values (NUMBER, STR);
21
22   exec sql ifdef INSERTNULL;
23   exec sql insert into test values (NULL, 'defined');
24   exec sql endif;
25
26   exec sql ifndef INSERTNULL;
27   exec sql insert into test values (NULL, 'not defined');
28   exec sql elif SOMEOTHERVAR;
29   exec sql insert into test values (NULL, 'someothervar defined');
30   exec sql else;
31   exec sql insert into test values (NULL, 'someothervar not defined');
32   exec sql endif;
33
34   exec sql define NUMBER 29;
35
36   exec sql select INSERTNULL, NUMBER::text || '-' || STR INTO :i, :s;
37
38   printf("i: %d, s: %s\n", i, s);
39
40   exec sql undef STR;
41   exec sql ifndef STR;
42   exec sql insert into test values (NUMBER, 'no string');
43   exec sql endif;
44
45   exec sql define TZVAR;  /* no value */
46   exec sql define TZVAR 'UTC';
47
48   exec sql ifndef TZVAR;
49   exec sql SET TIMEZONE TO 'GMT';
50   exec sql elif TZNAME;
51   exec sql SET TIMEZONE TO TZNAME;
52   exec sql else;
53   exec sql SET TIMEZONE TO TZVAR;
54   exec sql endif;
55
56   exec sql disconnect;
57   return 0;
58}
59