Skip to content

gkalidas/CDBMS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

21 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CDBMS - Customized Database Management System

CDBMS is a Java-based educational DBMS that demonstrates how a database system can be built from scratch. It provides a menu-driven console interface where users can perform common database operations such as inserting, querying, deleting, and backing up employee records.


โœจ Features

  • Insert new employee records
  • View all records (SELECT *)
  • Search employee by ID or Name
  • Delete employee by ID
  • Backup and restore data using serialization
  • Menu-driven console application

๐Ÿ“‚ Project Structure

CDBMS/
 โ”œโ”€โ”€ src/
 โ”‚   โ””โ”€โ”€ cdbms/
 โ”‚       โ”œโ”€โ”€ Employee.java
 โ”‚       โ”œโ”€โ”€ CDBMS.java
 โ”‚       โ”œโ”€โ”€ CDBMSApplication.java
 โ”‚       โ””โ”€โ”€ ... (other Java files)
 โ”œโ”€โ”€ practice/
    โ”œโ”€โ”€ Program831.java
    โ”œโ”€โ”€ *.java
    โ”œโ”€โ”€ Program847.java
    โ””โ”€โ”€ Program847.java
โ”œโ”€โ”€ docs/
    โ””โ”€โ”€ HISTORY.md
โ””โ”€โ”€ README.md
  • src/cdbms/ โ†’ All Java source files.
  • practice/ โ†’ All practice programs.
  • docs/ โ†’ All docs related to the proejct.
  • HISTORY.md โ†’ Keeps track of incremental changes made to each program.

๐Ÿš€ How to Run

  1. Navigate to the src directory and compile the code into a bin folder:

    cd src
    javac cdbms/*.java
  2. Run the application:

    java cdbms.CDBMSApplication

๐Ÿ–ฅ๏ธ Sample Usage

Example menu:

-------- Welcome to CDBMS ----------
1: Insert into Employee
2: Select * from Employee
3: Take a backup of Table
4: Select * from Employee where EmpID
5: Select * from Employee where EmpName
6: Delete * from Employee where EmpID
20: Terminate the DBMS
  • Insert an employee
  • Query employees by ID or Name
  • Delete records
  • Take or restore backups

๐Ÿ“œ History

Check the full changelog in docs/HISTORY.md


๐Ÿ”ฎ Future Enhancements

  • Implement UPDATE queries
  • Add more SQL-like syntax
  • Support multiple tables
  • Improve persistence with databases instead of file serialization
  • Add more database-related logic incrementally.
  • Convert Java programs to Python equivalents in later commits.
  • Improve modularity and structure for easier experimentation.

About

A custom-built database management system (CDBMS) in Java for managing employee records using file-based serialization. Supports CRUD operations with a console interface.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages