Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Stanford University

Introduction to SQL & Databases

Stanford University via edX XSeries

Overview

Databases are incredibly prevalent -- they underlie technology used by most people every day if not every hour. Databases reside behind a huge number of websites; they're a crucial component of telecommunications systems, banking systems, video games, and just about any other software system or electronic device that maintains some amount of persistent information.

SQL is the long-accepted standard query language for relational database systems: it empowers employees and businesses to make smarter business decisions with the increasing amount of data they have. Professionals with understanding of how databases are structured and of the principles and application of SQL are in high demand; being able to access and analyze data using SQL is a foundational data science skill.

This program, offered by Stanford Online, is based on the popular on-campus course taught by CS Professor Jennifer Widom.

Syllabus

Courses under this program:
Course 1: Databases: Relational Databases and SQL

This course is one of five self-paced courses on the topic of Databases, originating as one of Stanford's three inaugural massive open online courses released in the fall of 2011. The original "Databases" courses are now all available on edx.org.

This course provides an introduction to relational databases and comprehensive coverage of SQL, the long-accepted standard query language for relational database systems.

Databases: Advanced Topics in SQL and Databases: OLAP and Recursion are follow-on courses to this course and can be taken in either order. Advanced Topics is a broad and practical course covering indexes, transactions, constraints, triggers, views, and authorization, while OLAP and Recursion is recommended for learners with specific interest in these topics.



Course 2: Databases: Advanced Topics in SQL

This course is one of five self-paced courses on the topic of Databases, originating as one of Stanford's three inaugural massive open online courses released in the fall of 2011. The original "Databases" courses are now all available on edx.org.

This course is broad and practical, covering indexes, transactions, constraints, triggers, views, and authorization, all in the context of relational database systems and the SQL language. This course builds on concepts introduced in Databases: Relational Databases and SQL and is recommended for learners seeking to advance their understanding and use of relational databases.

  • The Indexes and Transactions section of this course covers two important features of database systems from the application-builder's perspective: indexing for increased performance, and transactions for concurrency control and failure recovery.
  • The Constraints and Triggers section of this course explains key, referential integrity, and "check" constraints, followed by comprehensive coverage of database triggers.
  • The Views and Authorization section of this course provides extensive coverage of how database views can be created, used, and updated, and introduces standard techniques for authorization in relational databases.


Course 3: Databases: OLAP and Recursion

This course is one of five self-paced courses on the topic of Databases, originating as one of Stanford's three inaugural massive open online courses released in the fall of 2011. The original "Databases" courses are now all available on edx.org.

This course builds on concepts introduced in Databases: Relational Databases and SQL and is recommended for learners seeking to understand On-Line Analytical Processing (OLAP) and/or recursion in the SQL language.

  • The On-Line Analytical Processing section of this course introduces star schemas, the data cube concept, and OLAP features in relational databases including the Cube and Rollup operators.
  • The Recursion section of this course covers the SQL standard for queries over recursively-defined relations.


Course 4: Databases: Modeling and Theory

This course is one of five self-paced courses on the topic of Databases, originating as one of Stanford's three inaugural massive open online courses released in the fall of 2011. The original "Databases" courses are now all available on edx.org.

This course covers underlying principles and design considerations related to databases; it can be taken either before or after taking other courses in the Databases series.

  • The Relational Algebra section of this course teaches the algebraic query language that provides the formal foundations of SQL.
  • The Relational Design Theory section of the course provides comprehensive coverage of dependency theory and normal forms in relational databases, a well-accepted theoretical framework for developing good relational database schemas.
  • The Unified Modeling Language section of this course introduces the data-modeling component of UML, and describes how UML diagrams are translated to relational database schemas.

The introductory videos in this course are the same as the introductory videos in Databases: Relational Databases and SQL ; they are included for the benefit of learners who have not taken Databases: Relational Databases and SQL.



Course 5: Databases: Semistructured Data

This course is one of five self-paced courses on the topic of Databases, originating as one of Stanford's three inaugural massive open online courses released in the fall of 2011. The original "Databases" courses are now all available on edx.org.

Part of the Databases series, this is a standalone course; learners seeking to develop an understanding of topics in this course do not need to take other Databases courses. This course covers the JSON and XML standards for semistructured data, along with query languages and schema declaration features for XML.

  • The XML Data section of this course introduces the XML model for semistructured and self-describing data, including DTDs and some features of XML Schema.
  • The JSON Data section of this course introduces the JSON model for human-readable structured or semistructured data.
  • The XPath and XQuery section of this course covers the XPath language for processing XML data, along with many features of the more advanced XQuery language.
  • The XSLT section of this course provides a general introduction to the XSLT rule-based language for querying and transforming XML data.


Courses

Taught by

Jennifer Widom

Reviews

Start your review of Introduction to SQL & Databases

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.