Course Overview

This comprehensive course teaches relational database concepts using MySQL and Python SQLAlchemy. Students will learn SQL from beginner to advanced levels, with practical examples and hands-on exercises.

Prerequisites

  • Basic understanding of programming concepts
  • Python 3.7+ installed
  • MySQL Server installed locally
  • Basic command line knowledge

Course Structure

Module 1: Database Fundamentals

Module 2: Basic SQL Operations

Module 3: Intermediate SQL

Module 4: Advanced SQL

Module 5: Python SQLAlchemy Integration

Module 6: Modern SQL and Concurrency

Setup Instructions

  1. Install MySQL Server

    # macOS (using Homebrew)
    brew install mysql
    brew services start mysql
    
    # Ubuntu/Debian
    sudo apt update
    sudo apt install mysql-server
    
    # Windows - Download from MySQL website

  2. Install Python Dependencies

    pip install -r requirements.txt

  3. Create MySQL User and Database

    CREATE USER 'student'@'localhost' IDENTIFIED BY 'password123';
    GRANT ALL PRIVILEGES ON *.* TO 'student'@'localhost';
    FLUSH PRIVILEGES;

Learning Path

  1. Start with Module 1 to understand database fundamentals
  2. Progress through each lesson sequentially
  3. Complete the exercises at the end of each lesson
  4. Practice with the provided sample datasets
  5. Use the Python SQLAlchemy examples to understand programmatic database access

Sample Datasets

  • sample_data/ - Contains sample SQL files and CSV data for practice
  • exercises/ - Practice exercises for each lesson
  • solutions/ - Solutions to exercises

Getting Help

  • Check the troubleshooting guide in each lesson
  • Review the common SQL patterns reference
  • Practice with the interactive exercises

Course Completion

Upon completing this course, students will be able to: - Design and create relational databases - Write complex SQL queries - Use Python SQLAlchemy for database operations - Optimize database performance - Implement advanced database features

Happy learning! 🎓