2 Statement prepare and execute 5000 times .
3 CREATE TABLE t1(f1 TINYINT,f2 SMALLINT,f3 INT,f4 BIGINT,f5 CHAR(20),FLOAT,f7 DOUBLE,f8 DATE,f9 TIME,f10 TIMESTAMP);
4 prepare and execute the below statement 5000 times
5 INSERT INTO t1 VALUES(1,11,111,1111,'CSQL1',11.11,1111.11,'2001-01-01','01:01:01','2001-01-01 01:01:01');
6 select count(*) should display 5000 records
13 AbsSqlConnection
*con
= createConnection();
14 rv
= con
->connect("root","manager");
19 printf("Connection opened\n");
20 AbsSqlStatement
*stmt
= createStatement();
21 stmt
->setConnection(con
);
24 printf("CREATE TABLE t1(f1 TINYINT,f2 SMALLINT,f3 INT,f4 BIGINT,f5 CHAR(10),f6 FLOAT,f7 DOUBLE,f8 DATE,f9 TIME,f10 TIMESTAMP);\n");
25 strcpy(statement
,"CREATE TABLE t1(f1 TINYINT,f2 SMALLINT,f3 INT,f4 BIGINT,f5 CHAR(10),f6 FLOAT,f7 DOUBLE,f8 DATE,f9 TIME,f10 TIMESTAMP);");
27 rv
= stmt
->prepare(statement
);
28 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 2; }
29 rv
= stmt
->execute(rows
);
30 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 3; }
33 strcpy(statement
,"GETALLTABLES;");
35 rv
= stmt
->prepare(statement
);
36 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 6; }
38 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 7; }
39 while(stmt
->next() !=NULL
) {
40 printf("Table Name is %s\n",stmt
->getFieldValuePtr(2)); //stmt->getFieldValuePtr(2) returns the TABLE_NAME (src/sql/SqlStatement.cxx)
48 for(i
=8; i
<= 5007; i
++)
50 stmt
->prepare("INSERT INTO t1 VALUES(1,11,111,1111,'CSQL1',11.11,1111.11,'2001-01-01','01:01:01','2001-01-01 01:01:01');");
51 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return i
; }
53 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return i
+1; }
60 //Fetching records after insert
61 printf("SELECT COUNT(*) FROM t1;\n");
62 strcpy(statement
,"SELECT COUNT(*) FROM t1;");
63 rv
= stmt
->prepare(statement
);
64 if(rv
!=OK
) { delete stmt
; delete con
; return 5008; }
65 stmt
->bindField(1,&cnt
);
66 rv
= con
->beginTrans();
69 while(stmt
->fetch() !=NULL
) {
70 printf("t1.COUNT(*)\n-----------\n %d \n", cnt
);
76 strcpy(statement
,"DROP TABLE t1;");
77 rv
= stmt
->prepare(statement
);
78 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 5009; }
79 rv
= stmt
->execute(rows
);
80 if(rv
!=OK
) { delete stmt
; con
->disconnect(); delete con
; return 5010; }
81 printf("Table t1 dropped\n");
84 printf("Connection Closed\n");
86 delete stmt
; delete con
;