Advertisement
Guest User

Untitled

a guest
Apr 29th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.64 KB | None | 0 0
  1. QueryResult *SQLExec::del(const hsql::DeleteStatement *statement) {
  2.    
  3.   Identifier table_name = statement->tableName;
  4.   DbRelation& table = SQLExec::tables->get_table(table_name);
  5.  
  6.   EvalPlan* plan = new EvalPlan(table);
  7.  
  8.   // if(statement->expr != nullptr){
  9.     // plan = new EvalPlan(get_where_conjunction(statement->expr),plan);
  10.   // }
  11.  
  12.   EvalPlan* optimized = plan->optimize();
  13.  
  14.   EvalPipeline pipeline = optimized->pipeline();
  15.    
  16.     Handles* handles = pipeline.second;
  17.   for(auto const& handle: *handles)
  18.     table.del(handle);
  19.  
  20.   u_long n = handles->size();
  21.  
  22.   delete handles;
  23.  
  24.   return new QueryResult("DELETED statement " + n);
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement