2 DbRetVal
createIndex(DatabaseManager
*dbMgr
, char *tblname
, char *fldname
, char *indname
)
4 HashIndexInitInfo
*idxInfo
= new HashIndexInitInfo();
5 strcpy(idxInfo
->tableName
, tblname
);
6 idxInfo
->list
.append(fldname
);
7 idxInfo
->indType
= hashIndex
;
8 idxInfo
->isUnique
= true;
9 DbRetVal rv
= dbMgr
->createIndex(indname
, idxInfo
);
11 printf("Index creation failed\n");
15 printf("Index created for %s\n", fldname
);
19 DbRetVal
createTable(DatabaseManager
*dbMgr
, char *tblname
)
22 tabDef
.addField("f1", typeInt
, 0, NULL
, true);
23 tabDef
.addField("f2", typeInt
);
24 DbRetVal rv
= dbMgr
->createTable(tblname
, tabDef
);
25 if (rv
!= OK
) { printf("Table creation failed\n"); return rv
; }
26 printf("Table created\n");
29 DbRetVal
dropTable(DatabaseManager
*dbMgr
, char *tblname
)
31 DbRetVal rv
= dbMgr
->dropTable(tblname
);
32 if (rv
!= OK
) { printf("Table drop failed\n"); return rv
; }
33 printf("Table Dropped\n");
36 int insertTuple(DatabaseManager
*dbMgr
, Connection
&conn
, char *tblname
, int count
)
38 Table
*table
= dbMgr
->openTable(tblname
);
41 printf("Unable to open table\n");
45 table
->bindFld("f1", &id1
);
46 table
->bindFld("f2", &id1
);
49 rv
= conn
.startTransaction();
50 if (rv
!= OK
) { dbMgr
->closeTable(table
); return 1; }
51 for (int i
= 0 ; i
< count
; i
++)
54 rv
= table
->insertTuple();
60 printf("Total Tuples inserted is %d\n", icount
);
61 dbMgr
->closeTable(table
);
64 int deleteTuple(DatabaseManager
*dbMgr
, Connection
&conn
, char *tblname
, int count
)
66 Table
*table
= dbMgr
->openTable(tblname
);
69 printf("Unable to open table\n");
76 p1
.setTerm("f1", OpEquals
, &val1
);
77 table
->setCondition(&p1
);
79 rv
= conn
.startTransaction();
80 if (rv
!= OK
) { dbMgr
->closeTable(table
); return 1; }
83 for (i
= 0 ; i
< count
; i
++)
88 tuple
= (char*)table
->fetch() ;
89 if (tuple
== NULL
) break;
90 rv
= table
->deleteTuple();
95 printf("Total Tuples deleted is %d\n", i
);
96 dbMgr
->closeTable(table
);
99 int deleteAllTuple(DatabaseManager
*dbMgr
, Connection
&conn
, char *tblname
)
101 Table
*table
= dbMgr
->openTable(tblname
);
104 printf("Unable to open table\n");
109 table
->setCondition(NULL
);
111 rv
= conn
.startTransaction();
112 if (rv
!= OK
) { dbMgr
->closeTable(table
); return 1; }
116 while ((tuple
= (char*) table
->fetch())) {
117 rv
= table
->deleteTuple();
124 printf("Total Tuples deleted is %d\n", count
);
125 dbMgr
->closeTable(table
);
128 int totalTuples(DatabaseManager
*dbMgr
, Connection
&conn
, char *tblname
)
130 Table
*table
= dbMgr
->openTable(tblname
);
133 printf("Unable to open table\n");
138 table
->setCondition(NULL
);
140 rv
= conn
.startTransaction();
141 if (rv
!= OK
) { dbMgr
->closeTable(table
); return 1; }
145 while ((tuple
= (char*) table
->fetch())) {
151 dbMgr
->closeTable(table
);