A lightweight, file-based database management system implemented in C++ that provides an intuitive SQL-like interface for data management without requiring external database servers.
This project implements a complete database management system with a command-line interface, allowing users to create tables, insert records, query data, and perform updates and deletions through a simple SQL-like query language. The database engine stores all data in binary files on disk, making it portable and easy to use for educational purposes or lightweight applications.
- Create and manage multiple tables with flexible schema definition
- Insert, query, update, and delete records efficiently
- Support for multiple data types including integers, strings, floats, and booleans
- Primary key constraints on table columns
- Simple SQL-like command interface
- File-based persistence with no external dependencies
- Harish Babu (B25BB1012)
- Abhishek (B25CM1001)
- Rahul (B25ME1063)
- Ashhar Ansari (B25EE1009)
- GCC compiler (g++) with C++17 support
- GNU Make
- Linux Environment
To compile the project, run:
make compileThis will create an executable file named ics_dbms in the bin/ directory.
To start the database management system:
./bin/ics_dbmsThis will launch an interactive command-line interface where you can begin executing database commands.
For detailed information about using the database system, refer to the following documentation files:
- DOCUMENTATION.md - Complete user guide with command syntax, data types, and examples
- engine documentation.md - Technical documentation of the database engine internals
make compile- Compile the source codemake run- run the application executablemake clean- Remove compiled binariesmake rebuild- Clean and recompile