Skip to content

iaminov/Queens-College-database-design-project2

Repository files navigation

Queens College CS 331 - Database Design Project 2

A comprehensive database design and implementation project featuring:

  • Conceptual and logical design (ERD, normalization)
  • SQL DDL and DML scripts
  • Java desktop client using JDBC with Swing JTable-based views
  • Documentation, presentation assets, project planning, and demo videos

Repository Structure

  • Documentation/ - Database design documents, ERDs, normalization schemas
  • Java code - JDBC modified to use Jtables/ - Java application with GUI
  • PowerPoint/ - Presentation materials
  • Project Management/ - Planning documents and timelines
  • SQL Files/ - Database scripts including DDL, DML, queries
  • Videos/ - Demo videos and walkthroughs

Tech Highlights

  • Java 17+ (or compatible), JDBC
  • SQL (ANSI; adapt dialect as needed: PostgreSQL, MySQL, SQL Server, SQLite)
  • Git LFS for large binary assets (videos, slides)
  • GitHub Actions for CI (conditional Java build, SQL lint, secret scan)

Local Development

Prerequisites

  1. Install JDK 17+

  2. Provide database connectivity via environment variables (do not hardcode secrets):

    • DB_URL (e.g., jdbc:postgresql://localhost:5432/dbname)
    • DB_USER
    • DB_PASSWORD

    Example file: .env.example

Build and Run

Maven

mvn -B -ntp package

Gradle

./gradlew build

Database

  • See SQL Files/ for DDL, seed data, stored procedures (if any), and queries
  • Ensure dialect compatibility as needed

Security and Secrets

  • Do not commit credentials or connection strings containing secrets
  • .env is ignored; use .env.example for documentation
  • GitHub Actions run secret scanning on pushes and PRs

License

Educational project; choose and add a LICENSE file if publishing publicly.

About

Queens College CS 331 Database Design - Project 2

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published