本文整理汇总了C++中Relation::deleteBlocks方法的典型用法代码示例。如果您正苦于以下问题:C++ Relation::deleteBlocks方法的具体用法?C++ Relation::deleteBlocks怎么用?C++ Relation::deleteBlocks使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Relation
的用法示例。
在下文中一共展示了Relation::deleteBlocks方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: deleteFromTable
void deleteFromTable(string tableName, string whereCondition) {
if(whereCondition.empty()){
if(!schemaManager.relationExists(tableName)) {
cout<<"Illegal Table Name"<<endl;
return;
}
Relation *relation = schemaManager.getRelation(tableName);
while(relation->getNumOfBlocks())
relation->deleteBlocks(relation->getNumOfBlocks()-1);
}
else {
Relation *relation = schemaManager.getRelation(tableName);
for(int i=0;i<relation->getNumOfBlocks();i++) {
relation->getBlock(i,0);
Block *block = mainMemory.getBlock(0);
vector<Tuple> tuples = block->getTuples();
for(int j=0;j<tuples.size();j++) {
if(!tuples[j].isNull() && whereConditionEvaluator(whereCondition, tuples[j])) {
block->nullTuple(j);
}
}
relation->setBlock(i,0);
}
}
}