1 // Create table t1, INSERT, UPDATE AND COMMIT.
2 // FETCH UPDATED RECORDS.
8 AbsSqlConnection
*con
= createConnection();
9 rv
= con
->connect("root","manager");
11 printf("Connection opened\n");
13 AbsSqlStatement
*stmt
= createStatement();
14 stmt
->setConnection(con
);
16 if(strcmp(getenv("DSN"),"oracle")==0)
17 strcpy(statement
,"CREATE TABLE t1(f1 number(9),f2 number(9));");
18 else if(strcmp(getenv("DSN"),"psql")==0)
19 strcpy(statement
,"CREATE TABLE t1(f1 INT,f2 INT);");
20 else if(strcmp(getenv("DSN"),"sybase")==0)
21 strcpy(statement
,"CREATE TABLE t1(f1 INT,f2 INT);");
22 else if(strcmp(getenv("DSN"),"db2")==0)
23 strcpy(statement
,"CREATE TABLE t1(f1 INT,f2 INT)");
25 strcpy(statement
,"CREATE TABLE t1(f1 INT,f2 INT) engine='innodb';");
28 rv
= stmt
->prepare(statement
);
29 if(rv
!=OK
) { delete stmt
; delete con
; return 2; }
31 rv
= stmt
->execute(rows
);
32 if(rv
!=OK
) { delete stmt
; delete con
; return 3; }
34 printf("Table t1 CREATED\n");
36 // insert into statement
37 strcpy(statement
,"INSERT INTO t1 VALUES(1,1);");
38 if(strcmp(getenv("DSN"),"db2")==0){
39 strcpy(statement
,"INSERT INTO t1 VALUES(1,1)");
41 rv
= stmt
->prepare(statement
);
42 if(rv
!=OK
) { delete stmt
; delete con
; return 4; }
44 rv
= con
->beginTrans();
45 if(rv
!=OK
) { delete stmt
; delete con
; return 5; }
47 rv
= stmt
->execute(rows
); if(rv
!=OK
) return 6;
49 printf("One record inserted\n");
53 printf("update t1 set f2=100\n");
54 strcpy(statement
,"UPDATE t1 SET f2=100;");
55 if(strcmp(getenv("DSN"),"db2")==0){
56 strcpy(statement
,"UPDATE t1 SET f2=100");
58 rv
= stmt
->prepare(statement
);
59 if(rv
!=OK
) { delete stmt
; delete con
; return 7; }
61 rv
= stmt
->execute(rows
);
62 if(strcmp(getenv("DSN"),"db2")!=0){
63 if(rv
!=OK
){ printf ("Hello\n"); return 8; }
65 rv
= con
->commit(); if(rv
!=OK
)return 9;
66 printf("One row updated\n");
68 strcpy(statement
,"SELECT f2 FROM t1 ;");
69 if(strcmp(getenv("DSN"),"db2")==0){
70 strcpy(statement
,"SELECT f2 FROM t1");
72 rv
= stmt
->prepare(statement
);
73 if(rv
!=OK
) { delete stmt
; delete con
; return 10; }
76 stmt
->bindField(1,&id
);
77 rv
= con
->beginTrans();
81 while(stmt
->fetch()!=NULL
)
83 printf("f2= %d\n",id
);
89 printf("Total reccord fetchec=%d\n",count
);
91 strcpy(statement
,"DROP TABLE t1;");
92 if(strcmp(getenv("DSN"),"db2")==0){
93 strcpy(statement
,"DROP TABLE t1;");
95 rv
= stmt
->prepare(statement
);
96 if(rv
!=OK
) { delete stmt
; delete con
; return 13; }
97 rv
= stmt
->execute(rows
);
98 if(rv
!=OK
) { delete stmt
; delete con
; return 14; }
100 printf("TABLE t1 DROPPED SUCCESSFULLY\n");
104 printf("Connection closed successfully\n");