Line data Source code
1 : exec sql include sqlca;
2 : #include <stdio.h>
3 :
4 : exec sql include ../regression;
5 :
6 :
7 2 : int main()
8 : { exec sql begin declare section;
9 : int index;
10 : exec sql end declare section;
11 :
12 :
13 2 : ECPGdebug(1,stderr);
14 :
15 2 : exec sql connect to REGRESSDB1;
16 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
17 :
18 2 : exec sql create table test (
19 : "index" numeric(3) primary key,
20 : "payload" int4 NOT NULL);
21 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
22 2 : exec sql commit work;
23 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
24 :
25 22 : for (index=0;index<10;++index)
26 20 : { exec sql insert into test
27 : (payload, index)
28 : values (0, :index);
29 20 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
30 : }
31 2 : exec sql commit work;
32 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
33 :
34 2 : exec sql update test
35 : set payload=payload+1 where index=-1;
36 2 : if (sqlca.sqlcode!=100) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
37 :
38 2 : exec sql delete from test where index=-1;
39 2 : if (sqlca.sqlcode!=100) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
40 :
41 2 : exec sql insert into test (select * from test where index=-1);
42 2 : if (sqlca.sqlcode!=100) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
43 :
44 2 : exec sql drop table test;
45 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
46 2 : exec sql commit work;
47 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
48 :
49 2 : exec sql disconnect;
50 2 : if (sqlca.sqlcode) printf("%ld:%s\n",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
51 2 : return 0;
52 : }
|