In this project, I am writing my own idea for a relational database from scratch. I am trying to do so without much outside influence, to see how I would implement some DBMS ideas. The database will use a basic version of SQL with some changes to make it easier for me to parse.
- Compile all
.ccfiles in the src folder withg++ -std=c++20 src/*.cc -o db - Run the executable with
./db - Create a new table with
create TABLE_NAME VAR_NAME:VAR_TYPE... - Insert to the table with
insert TABLE_NAME VAR_VAL:VAR_TYPE... - View a table its rows with with
select TABLE_NAME - Load a database with
load TABLE_NAME
With each table creation and row insertion, the database should automatically serialize itself and save the data to disk. Tables are by default stored in databases/.
- Implement more comprehensive Select-From-Where queries
- Implement indexing with B+ Trees