@@ -6,7 +6,7 @@ exec sql include sqlca;
66exec sql define AMOUNT 4;
77
88exec sql type intarray is int[AMOUNT];
9- exec sql type string is char(6 );
9+ exec sql type string is char(8 );
1010
1111typedef int intarray[AMOUNT];
1212
@@ -16,7 +16,7 @@ main ()
1616exec sql begin declare section;
1717 intarray amount;
1818int increment=100;
19- char name[AMOUNT][6 ];
19+ char name[AMOUNT][8 ];
2020char letter[AMOUNT][1];
2121char command[128];
2222exec sql end declare section;
@@ -35,8 +35,8 @@ exec sql end declare section;
3535 exec sql connect to pm;
3636
3737strcpy(msg, "create");
38- exec sql at main create table test(name char(6 ), amount int, letter char(1));
39- exec sql create table test(name char(6 ), amount int, letter char(1));
38+ exec sql at main create table test(name char(8 ), amount int, letter char(1));
39+ exec sql create table test(name char(8 ), amount int, letter char(1));
4040
4141strcpy(msg, "commit");
4242exec sql at main commit;
@@ -46,13 +46,13 @@ exec sql end declare section;
4646exec sql set connection to main;
4747
4848strcpy(msg, "execute insert 1");
49- sprintf(command, "insert into test(name, amount, letter) values ('db:mm ', 1, 'f')");
49+ sprintf(command, "insert into test(name, amount, letter) values ('db:''mm'' ', 1, 'f')");
5050 exec sql execute immediate :command;
51- sprintf(command, "insert into test(name, amount, letter) values ('db:mm ', 2, 't')");
51+ sprintf(command, "insert into test(name, amount, letter) values ('db:''mm'' ', 2, 't')");
5252 exec sql execute immediate :command;
5353
5454 strcpy(msg, "execute insert 2");
55- sprintf(command, "insert into test(name, amount, letter) values ('db:pm ', 1, 'f')");
55+ sprintf(command, "insert into test(name, amount, letter) values ('db:''pm'' ', 1, 'f')");
5656 exec sql at pm execute immediate :command;
5757
5858 strcpy(msg, "execute insert 3");
@@ -78,12 +78,12 @@ exec sql end declare section;
7878 exec sql select name, amount, letter into :name, :amount, :letter from test;
7979
8080 for (i=0, j=sqlca.sqlerrd[2]; i<j; i++)
81- printf("name[%d]=%6.6s \tamount[%d]=%d\tletter[%d]=%c\n", i, name[i], i, amount[i],i, letter[i][0]);
81+ printf("name[%d]=%8.8s \tamount[%d]=%d\tletter[%d]=%c\n", i, name[i], i, amount[i],i, letter[i][0]);
8282
8383 exec sql at pm select name, amount, letter into :name, :amount, :letter from test;
8484
8585 for (i=0, j=sqlca.sqlerrd[2]; i<j; i++)
86- printf("name[%d]=%6.6s \tamount[%d]=%d\tletter[%d]=%c\n", i, name[i], i, amount[i],i, letter[i][0]);
86+ printf("name[%d]=%8.8s \tamount[%d]=%d\tletter[%d]=%c\n", i, name[i], i, amount[i],i, letter[i][0]);
8787
8888strcpy(msg, "drop");
8989exec sql drop table test;