/DBMS

A relational database management system supporting insertion, updating, deletion, searching. It supports indexing using B+Trees.

Primary LanguageJava

Readme

The project has three packages

  • DB
  • BPTree
  • Exceptions

DB Package:

Contains the basic files for the DBMS

  • DBApp.java, this file contains all the major methods for the DBMS, insertIntoTable, selectFromTable, createIndex, update and delete.
  • DBAppTest.java, this file contains the only main method in the project.
  • Page.java, this file contains the class for creating the table pages.
  • Table.java, this file contains the class for creating DB tables.
  • Tuple.java, this file contains the class for creating single taple records stored in the pages.

BPTree Package

Contains the files of the B+ Tree

  • BPTree.java, the main class for the B+ Tree, it contains the major methods: insert, delete, update, find.
  • Leaf.java, the class for creating the tree leaves.
  • NonLeaf.java, the class for creating the tree non-leaves.
  • Node.java, the superclass which Leaf and NonLeaf classes extend.
  • NodeEntry.java, the class for the content of the non-leaves.
  • TuplePointer.java, the class for the content of the leaves.

Exceptions Package

  • Contains the needed exceptions in the DBMS.

How to run the project?

Using the makefile:

  • Open the terminal and type the appropriate make command:
    • make all --> compiles and runs the main method in DBAppTest class
    • make compile --> compiles the files only and saves the .class files in the bin folder.
    • make run --> runs the .class files from the bin folder.
    • make clean --> Deletes the current data of the database

To test the project, you need to add your custom database entries in DBAppTest.java, then use the makefile to run the project as indicated above, or run it directly from your IDE.