CS50's Introduction to Databases with SQL
Learn how to create, read, update, and delete data with relational databases.
An introduction to databases using a language called SQL in an online course from Harvard.
3-6 hours a week
What You'll Learn
This is CS50's introduction to databases using a language called SQL. Learn how to create, read, update, and delete data with relational databases, which store data in rows and columns. Learn how to model real-world entities and relationships among them using tables with appropriate types, triggers, and constraints. Learn how to normalize data to eliminate redundancies and reduce potential for errors. Learn how to join tables together using primary and foreign keys. Learn how to automate searches with views and expedite searches with indexes. Learn how to connect SQL with other languages like Python and Java. Course begins with SQLite for portability's sake and ends with introductions to PostgreSQL and MySQL for scalability's sake as well. Assignments inspired by real-world datasets.
The course will be delivered via edX and connect learners around the world. By the end of the course, participants will learn:
- CREATE TABLE
- SELECT
- INSERT
- UPDATE
- DELETE
- DROP
- CREATE INDEX
- CREATE VIEW
- SQLite, PostgreSQL, MySQL
- connectors (Python, Java)
- replication
Your Instructors
David J. Malan
Gordon McKay Professor of the Practice of Computer Science at Harvard University
Read full bio
Ways to take this course
When you enroll in this course, you will have the option of pursuing a Verified Certificate or Auditing the Course.
A Verified Certificate costs $299 and provides unlimited access to full course materials, activities, tests, and forums. At the end of the course, learners who earn a passing grade can receive a certificate.
Alternatively, learners can Audit the course for free and have access to select course material, activities, tests, and forums. Please note that this track does not offer a certificate for learners who earn a passing grade.