This repo documents how I learned database design and development and built a simple but complete web application powered by a relational database.
I started by gathering requirements and showing how to model a relational database using an Entity-Relationship Diagram (ERD). Concepts covered include entity sets and relationships, using keys as a unique identifier for each object in an entity set, one-one, many-one, and many-many relationships as well as translational rules from conceptual modeling (ERD) to relational table definitions.
After designing and modeling my database, I learned the universal language of relational databases: SQL (Structured Query Language). I first learned relational algebra, the theoretical foundation of SQL and then examined in detail the two main aspects of SQL: data definition language (DDL) and data manipulation language (DML). Concepts covered include subqueries, aggregation, various types of joins, functions, triggers and stored procedures. I then learned about web connectivity to build a simple front-end for my application in order to interact with my database online. Finally, I learned an overview of related topics such as data warehousing, big data and NoSQL databases.
(Adopted from my Databases class at Uchicago)