Question
I need help fixing my code in c++. This is my second time coming back for help on this. So far the problem is now
I need help fixing my code in c++. This is my second time coming back for help on this. So far the problem is now that "USE" function doesn't work correctly. In the PDF below, you can see that despite doing "USE db_1;" the program still fails to create a table because no database is being used. There seems to be a problem with my USE case.
Here is my revised code with two files
==== main.cpp ====
#include
#include "table.h"
using namespace std;
void parseInput(const string& input, vector int main(int argc, char* argv[]){ string input; vector while (input != ".EXIT"){ //main loop cout "; getline(cin, input); parseInput(input, commands); parseCommands(commands, tables); } return 0; } //getData function, grabs data return line string getData(string line){ auto it = find(line.begin(), line.end(), '('); line = string(it, line.end()); line = line.substr(1, line.size() - 2); replace(line.begin(), line.end(), ',', '|'); return line; } //getName function, gets name string getName(string line){ stringstream ss(line); string token; while (getline(ss, token, ' ')){ } return token; } //getTblName, gets table name string getTblName(string line){ stringstream ss(line); string token; int i = 0; while (getline(ss, token, ' ') && i & commands){ stringstream ss(input); string token; while (getline(ss, token, ';')){ commands.push_back(token); } } //parseCommands function, handles the database systems void parseCommands(vector for (auto i : commands){ if (i.find("CREATE DATABASE") != -1){ string dbName = getName(i); const int direrr = system(("mkdir " + dbName).c_str()); if (direrr == 0) cout size_t index = it - tables.begin(); //finds table index if it exists if (it != tables.end()){ cout commands.clear(); } ==== table.h ==== #pragma once #include using namespace std; class table{ public: string name; string db; string data; table(string tbName, string currDB, string currData){ name = tbName; db = currDB; data = currData; } table(string tbName, string currDB){ name = tbName; db = currDB; } string getName(){ return name; } string getData(){ return data; } void add(string line){ //puts add in substr line = line.substr(line.find("ADD") + 3); data.append(" | " + line); } ~table(){} //operator overload to check for equality to see if table exists bool operator==(table const& rhs){ if (name == rhs.name && db == rhs.db) return true; else false; } }; & tables); //execute commands and modify tables string getName(string line); //get name string getTblName(string line); //get table name string getData(string line); //get data
tables;
& tables){ string currDB;
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started