From f0d54ab69d9ed244bf8afd4cc16fb0a24e2e0c48 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:31:05 -0500 Subject: [PATCH 1/8] got our stuff together --- a.out | Bin 0 -> 36339 bytes db_engine.cpp | 52 ++++++++++++++++++++++++++++++++++++++++++-------- db_engine.h | 9 ++++++--- test.cpp | 11 +++++++++-- 4 files changed, 59 insertions(+), 13 deletions(-) create mode 100755 a.out diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..16a80ad064e9ab6d2b417cf7053568de4e208a4b GIT binary patch literal 36339 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 literal 0 HcmV?d00001 diff --git a/db_engine.cpp b/db_engine.cpp index 10abbbf..c4df4ba 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,13 +1,49 @@ #include "db_engine.h" +using namespace std; + db_engine::db_engine(){ // } //create a new table in memory //creates a vector -void db_engine::createCmd(){ - // +void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ + string output = ""; + output += "CREATE TABLE " + tableName + " ("; + + vector::iterator it = attributes.begin(); + while (it != attributes.end()){ + if (it == attributes.begin()) + if ((it + 1) != attributes.end()) + output += *it + ","; + else + output += *it; + else + output+= " " + *it; + + ++it; + } + + output += ") PRIMARY KEY ("; + + vector::iterator it2 = pkeys.begin(); + while (it2 != pkeys.end()){ + if (it2 == pkeys.begin()) + if ((it2 + 1) != pkeys.end()) + output += *it2 + ","; + else + output += *it2; + else + output+= " " + *it2; + + ++it2; + } + + output += ");"; + + cout << output; + //cmdList.push_back(output); } //open a txt file, parse SQL script, load data in table @@ -17,10 +53,10 @@ void db_engine::createCmd(){ //should write cmdList to a .txt file void db_engine::saveCmd(){ - std::ofstream dbCmdFile; - dbCmdFile.open("dbCmds.txt", std::ios_base::app); + ofstream dbCmdFile; + dbCmdFile.open("dbCmds.txt", ios_base::app); - std::vector::iterator it = cmdList.begin(); + vector::iterator it = cmdList.begin(); while (it != cmdList.end()){ dbCmdFile << *it << "\n"; ++it; @@ -30,13 +66,13 @@ void db_engine::saveCmd(){ } //display the table currently stored in memory -void db_engine::showCmd(){ - // +void db_engine::showCmd(string tableName){ + cmdList.push_back("CREATE TABLE " + tableName + ""); } //add a tuple to a table in the memory void db_engine::insertQuery(){ - // + //table.push_back(); } //remove a tuple from a table in the memory diff --git a/db_engine.h b/db_engine.h index ba2ea28..e7192d7 100755 --- a/db_engine.h +++ b/db_engine.h @@ -2,15 +2,18 @@ #include #include +using namespace std; + class db_engine { - std::vector cmdList; + vector cmdList; + //vector> table; public: db_engine(); - void createCmd(); + void createCmd(string tableName, vector attributes, vector pkeys); //void openCmd(); void saveCmd(); - void showCmd(); + void showCmd(string tableName); void insertQuery(); void deleteQuery(); void selectQuery(); diff --git a/test.cpp b/test.cpp index 37541d8..a5a6be7 100755 --- a/test.cpp +++ b/test.cpp @@ -1,8 +1,15 @@ #include #include "db_engine.h" +using namespace std; + int main() { db_engine engine; - engine.saveCmd(); - std::cout << "succesfully traversed the code!"; + + vector attributes; + vector pkeys; + attributes.push_back("username VARCHAR(20)"); + attributes.push_back("password VARCHAR(20)"); + pkeys.push_back("password"); + engine.createCmd("users", attributes, pkeys); } \ No newline at end of file From e9e631aa6b5b8256b58863d896afaeaa186e7a3f Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:34:55 -0500 Subject: [PATCH 2/8] changed show --- db_engine.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/db_engine.cpp b/db_engine.cpp index c4df4ba..02d0a90 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -65,9 +65,9 @@ void db_engine::saveCmd(){ cmdList.clear(); } -//display the table currently stored in memory +//display the database void db_engine::showCmd(string tableName){ - cmdList.push_back("CREATE TABLE " + tableName + ""); + cmdList.push_back("SHOW " + tableName + ""); } //add a tuple to a table in the memory From 7fe87111fc2f9ae30cac72f5dde463b9fec78089 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:39:04 -0500 Subject: [PATCH 3/8] assignments for the night --- db_engine.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/db_engine.cpp b/db_engine.cpp index 02d0a90..ff96c0c 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -8,6 +8,7 @@ db_engine::db_engine(){ //create a new table in memory //creates a vector +//DONE void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ string output = ""; output += "CREATE TABLE " + tableName + " ("; @@ -52,6 +53,7 @@ void db_engine::createCmd(string tableName, vector attributes, vector Date: Tue, 15 Sep 2015 10:21:16 -0500 Subject: [PATCH 4/8] updates --- a.out | Bin 36339 -> 36312 bytes dbCmds.txt | 2 ++ db_engine.cpp | 25 +++++++++++++++++++++---- db_engine.h | 2 +- test.cpp | 15 +++++++++++++-- 5 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 dbCmds.txt diff --git a/a.out b/a.out index 16a80ad064e9ab6d2b417cf7053568de4e208a4b..0ade4b55f0bfeb69d4ca4750456a87693da31d04 100755 GIT binary patch delta 12580 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 attributes, vector pkeys){ + //creates the proper command and adds it to the cmdList + //make this better, we need a heterogenous container string output = ""; output += "CREATE TABLE " + tableName + " ("; @@ -43,8 +45,7 @@ void db_engine::createCmd(string tableName, vector attributes, vector t){ + string output = "INSERT INTO " + tableName + " VALUES FROM ("; + + vector::iterator it = t.begin(); + while (it != t.end()){ + if (it == t.begin()) + if ((it + 1) != t.end()) + output += *it + ","; + else + output += *it; + else + output+= " " + *it; + + ++it; + } + + cmdList.push_back(output + ");"); } //remove a tuple from a table in the memory diff --git a/db_engine.h b/db_engine.h index e7192d7..e56f754 100755 --- a/db_engine.h +++ b/db_engine.h @@ -14,7 +14,7 @@ public: //void openCmd(); void saveCmd(); void showCmd(string tableName); - void insertQuery(); + void insertQuery(string tableName, vector t); void deleteQuery(); void selectQuery(); void projectQuery(); diff --git a/test.cpp b/test.cpp index a5a6be7..392549b 100755 --- a/test.cpp +++ b/test.cpp @@ -5,11 +5,22 @@ using namespace std; int main() { db_engine engine; - + vector attributes; vector pkeys; + //we need a better way to do this + //going for function right now attributes.push_back("username VARCHAR(20)"); attributes.push_back("password VARCHAR(20)"); pkeys.push_back("password"); + engine.createCmd("users", attributes, pkeys); -} \ No newline at end of file + + vector tuple; + tuple.push_back("csce315"); + tuple.push_back("12345"); + + engine.insertQuery("users", tuple); + + engine.saveCmd(); +} From cdc2b3ccf6fe84c34e8646a363afb3346b75581f Mon Sep 17 00:00:00 2001 From: Becca Date: Tue, 15 Sep 2015 10:21:27 -0500 Subject: [PATCH 5/8] updates --- a.out | Bin 36312 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index 0ade4b55f0bfeb69d4ca4750456a87693da31d04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36312 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 Date: Tue, 15 Sep 2015 10:22:56 -0500 Subject: [PATCH 6/8] updates --- dbCmds.txt | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 dbCmds.txt diff --git a/dbCmds.txt b/dbCmds.txt deleted file mode 100644 index 8aae8f5..0000000 --- a/dbCmds.txt +++ /dev/null @@ -1,2 +0,0 @@ -CREATE TABLE users (username VARCHAR(20), password VARCHAR(20)) PRIMARY KEY (password); -INSERT INTO users VALUES FROM (csce315, 12345); From a449b76e2124ab83157260a7fc76d4b0174dd85c Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 16:30:25 -0500 Subject: [PATCH 7/8] updating structure --- Attribute.h | 37 ++++++++++++++++++++++++++++++++++ DBEngine.cpp | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ DBEngine.h | 25 +++++++++++++++++++++++ Relation.h | 16 +++++++++++++++ test.cpp | 24 ++++------------------ 5 files changed, 139 insertions(+), 20 deletions(-) create mode 100755 Attribute.h create mode 100755 DBEngine.cpp create mode 100755 DBEngine.h create mode 100755 Relation.h diff --git a/Attribute.h b/Attribute.h new file mode 100755 index 0000000..2c1bd3d --- /dev/null +++ b/Attribute.h @@ -0,0 +1,37 @@ +#include +#include + +using namespace std; + +//Funtional, might need more functionality + +template +class Attribute { + //a named column of a relation + string name; + vector values; + bool isKey; + int size; +public: + Attribute(){ } + + Attribute(vector v){ + this.values = v; + } + + Attribute(const Attribute& a){ + this.values = a.getAll(); + } + + Attribute& operator=(const Attribute& a){ + this.values = a.getAll(); + } + + string getName(){ + return name; + } + + vector getAll(){ + return this.values; + } +}; \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp new file mode 100755 index 0000000..a2842e4 --- /dev/null +++ b/DBEngine.cpp @@ -0,0 +1,57 @@ +#include "DBEngine.h" + +using namespace std; + +DBEngine::DBEngine(){ + // +} + +//create a new table in memory +void DBEngine::createCmd(){ + // +} + +//open a txt file, parse SQL script, load data in table +//void DBEngine::openCmd(){ + // +//} + +//should write cmdList to a .txt file +void DBEngine::saveCmd(){ + // +} + +//display the database +void DBEngine::showCmd(){ + // +} + +//add a tuple to a table in the memory +void DBEngine::insertQuery(){ + // +} + +//remove a tuple from a table in the memory +void DBEngine::deleteQuery(){ + // +} + +//search and return one more tuples from a table in the memory +void DBEngine::selectQuery(){ + // +} + +//return a subset of attributes (columns) +void DBEngine::projectQuery(){ + // +} + +//each row in the first table is paired with all the rows in the second table +void DBEngine::productQuery(){ + // +} + +//true if relations have the same # of attributes and each attribute must be from the same domain +bool DBEngine::unionComp(){ + return false; +} diff --git a/DBEngine.h b/DBEngine.h new file mode 100755 index 0000000..9ec458b --- /dev/null +++ b/DBEngine.h @@ -0,0 +1,25 @@ +#include +#include +#include +#include "Relation.h" + +using namespace std; + +class DBEngine { + //member variables + //NOT DONE + //vector tables; + +public: + DBEngine(); + void createCmd(); + //void openCmd(); + void saveCmd(); + void showCmd(); + void insertQuery(); + void deleteQuery(); + void selectQuery(); + void projectQuery(); + void productQuery(); + bool unionComp(); +}; diff --git a/Relation.h b/Relation.h new file mode 100755 index 0000000..222b8a5 --- /dev/null +++ b/Relation.h @@ -0,0 +1,16 @@ +#include +#include +#include "Attribute.h" + +using namespace std; + +//NOT DONE +class Relation { + //a table with rows and columns + string name; + vector< Attribute > att; +public: + Relation(); + Relation(vector< Attribute > a) { att = a; } + void addTuple(vector< Attribute > tuple); +}; \ No newline at end of file diff --git a/test.cpp b/test.cpp index 392549b..a419a4a 100755 --- a/test.cpp +++ b/test.cpp @@ -1,26 +1,10 @@ #include -#include "db_engine.h" +#include "DBEngine.h" using namespace std; int main() { - db_engine engine; - - vector attributes; - vector pkeys; - //we need a better way to do this - //going for function right now - attributes.push_back("username VARCHAR(20)"); - attributes.push_back("password VARCHAR(20)"); - pkeys.push_back("password"); - - engine.createCmd("users", attributes, pkeys); - - vector tuple; - tuple.push_back("csce315"); - tuple.push_back("12345"); - - engine.insertQuery("users", tuple); - - engine.saveCmd(); + DBEngine engine; + Relation r; + Attribute a; } From 0e99c2e305da2d7c929906caeb0a78855fc6d46a Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 16:32:05 -0500 Subject: [PATCH 8/8] updating structure --- db_engine.cpp | 127 -------------------------------------------------- db_engine.h | 23 --------- 2 files changed, 150 deletions(-) delete mode 100755 db_engine.cpp delete mode 100755 db_engine.h diff --git a/db_engine.cpp b/db_engine.cpp deleted file mode 100755 index d4060eb..0000000 --- a/db_engine.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include "db_engine.h" - -using namespace std; - -db_engine::db_engine(){ - // -} - -//create a new table in memory -//creates a vector -//DONE -void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ - //creates the proper command and adds it to the cmdList - //make this better, we need a heterogenous container - string output = ""; - output += "CREATE TABLE " + tableName + " ("; - - vector::iterator it = attributes.begin(); - while (it != attributes.end()){ - if (it == attributes.begin()) - if ((it + 1) != attributes.end()) - output += *it + ","; - else - output += *it; - else - output+= " " + *it; - - ++it; - } - - output += ") PRIMARY KEY ("; - - vector::iterator it2 = pkeys.begin(); - while (it2 != pkeys.end()){ - if (it2 == pkeys.begin()) - if ((it2 + 1) != pkeys.end()) - output += *it2 + ","; - else - output += *it2; - else - output+= " " + *it2; - - ++it2; - } - - output += ");"; - - cmdList.push_back(output); -} - -//open a txt file, parse SQL script, load data in table -//void db_engine::openCmd(){ - // -//} - -//should write cmdList to a .txt file -//DONE -void db_engine::saveCmd(){ - ofstream dbCmdFile; - dbCmdFile.open("dbCmds.txt", ios_base::app); - - vector::iterator it = cmdList.begin(); - while (it != cmdList.end()){ - dbCmdFile << *it << "\n"; - ++it; - } - - cmdList.clear(); -} - -//display the database -//DONE -void db_engine::showCmd(string tableName){ - cmdList.push_back("SHOW " + tableName + ""); -} - -//add a tuple to a table in the memory -//maybe make a table object? -//BECCA -void db_engine::insertQuery(string tableName, vector t){ - string output = "INSERT INTO " + tableName + " VALUES FROM ("; - - vector::iterator it = t.begin(); - while (it != t.end()){ - if (it == t.begin()) - if ((it + 1) != t.end()) - output += *it + ","; - else - output += *it; - else - output+= " " + *it; - - ++it; - } - - cmdList.push_back(output + ");"); -} - -//remove a tuple from a table in the memory -//BECCA -void db_engine::deleteQuery(){ - // -} - -//search and return one more tuples from a table in the memory -//WILLIAM -void db_engine::selectQuery(){ - // -} - -//return a subset of attributes (columns) -//BRANDON -void db_engine::projectQuery(){ - // -} - -//each row in the first table is paired with all the rows in the second table -//BRANDON -void db_engine::productQuery(){ - // -} - -//true if relations have the same # of attributes and each attribute must be from the same domain -//WILLIAM -bool db_engine::unionComp(){ - return false; -} diff --git a/db_engine.h b/db_engine.h deleted file mode 100755 index e56f754..0000000 --- a/db_engine.h +++ /dev/null @@ -1,23 +0,0 @@ -#include -#include -#include - -using namespace std; - -class db_engine { - vector cmdList; - //vector> table; - -public: - db_engine(); - void createCmd(string tableName, vector attributes, vector pkeys); - //void openCmd(); - void saveCmd(); - void showCmd(string tableName); - void insertQuery(string tableName, vector t); - void deleteQuery(); - void selectQuery(); - void projectQuery(); - void productQuery(); - bool unionComp(); -};