Intro to Relational Databases (Udacity)

Offered by Udacity,
Intro to Relational Databases (Udacity)

SQL, DB-API, and More! This course is a quick, fun introduction to using a relational database from your code, using examples in Python. You'll learn the basics of SQL (the Structured Query Language) and database design, as well as the Python API for connecting Python code to a database. You'll also learn a bit about protecting your database-backed web apps from common security problems. After taking this course, you'll be able to write code using a database as a backend to store application data reliably and safely.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

If you look under the hood of a lot of major web sites — from Wikipedia to Reddit — you'll find a relational database somewhere.
Database systems such as PostgreSQL and MySQL have been part of the web developer's toolkit for many years, and remain some of the most powerful tools available for storing and manipulating structured data.
If you're planning to continue on in full-stack development, knowing about databases is essential background. Even though many toolkits hide the details of the database from your application code, being able to interact with the database will serve you well in designing, debugging, and maintaining your applications.

What You Will Learn

LESSON 1
Data and Tables

  • Learn about how relational databases let you structure data into tables.
  • Learn about the importance of unique keys and relationships between tables.

LESSON 2
Elements of SQL

  • Begin learning SQL the Structured Query Language used by most relational databases.
  • Learn about the select and insert statements the basic operations for reading and writing data.
  • Learn about the operators and syntax available to get the database to scan and join tables for you.

LESSON 3
Python DB-API

  • Learn how to access a relational database from Python code.
  • Use a virtual machine (VM) to run a Python web application with a database.
  • Common security pitfalls of database applications including the famous Bobby Tables.

LESSON 4
Deeper Into SQL

  • Learn how to design and create new databases.
  • Learn about normalized design which makes it easier to write effective code using a database.
  • Learn how to use the SQL join operators to rapidly connect data from different tables.

Prerequisites and Requirements
You can read and write basic code in Python. This course uses programming exercises in Python. If you haven't worked with Python before, check out our course Programming Foundations with Python.
If you can understand this code (maybe with the help of the random module documentation), you know enough Python for this course:
import random
def ChooseTwice(items):
a = random.choice(items)
b = random.choice(items)
return a, b
names = ["Alice", "Bob", "Charlie", "Debra"]
(one, two) = ChooseTwice(names)
if one == two:
print "%s is happy!" % one
else:
print "%s likes %s!" % (one, two)
You can use a command-line interface (terminal). Some of the exercises in this course involve using a Unix-style command-line interface to enter commands, run Python programs, and navigate directories.If you have taken our course on Git and Github, the level of command-line use in this course is similar.You don't need to be a Web programmer. This course does include a small Web application and some HTML and JavaScript in examples, but you will not need to make changes in these languages.You don't need any previous database experience. This course is an entry-level introduction to relational databases.You need a programming text editor (such as Sublime Text) installed on your computer. You should be able to use it to open and edit files of Python code.

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

Related Courses

Authentication & Authorization: OAuth (Udacity) Udacity
Udacity

Authentication & Authorization: OAuth (Udacity)

Implementing Web Security with OAuth 2.0. As a Python programmer, leveraging Flask allows you to quickly and easily build your own web applications. But before you share your apps on the Internet you should protect your users' data, ensuring information stored on your site is safe from unwanted manipulation. You could implement web security and permissions on your own, but relying on trusted providers is a faster, safer, and easier way to allow users to login to your application - without having to create and maintain another account, profile, and password.

Self Paced
Self-Paced
Big Data Analysis with Scala and Spark (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Big Data Analysis with Scala and Spark (Coursera)

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout.

Nov 9th 2026
4 Weeks
Python Data Structures (Coursera) Coursera
University of Michigan

Python Data Structures (Coursera)

This course will introduce the core data structures of the Python programming language. We will move past the basics of procedural programming and explore how we can use the Python built-in data structures such as lists, dictionaries, and tuples to perform increasingly complex data analysis. This course will cover Chapters 6-10 of the textbook “Python for Everybody”. This course covers Python 3.

Nov 9th 2026
5-12 Weeks
Programming for Data Science (Coursera) Coursera
University of Leeds

Programming for Data Science (Coursera)

Explore the basics of programming and familiarise yourself with the Python language. After completing this course, you will be able to write Python programs in Jupyter Notebook and describe basic programming. In this course, you will learn everything you need to start your programming journey. You will discover the different data types available in Python and how to use them, learn how to apply conditional and looping control structures, and write your own functions.

Nov 16th 2026
3 Weeks
Programming for Everybody (Getting Started with Python) (Coursera) Coursera
University of Michigan

Programming for Everybody (Getting Started with Python) (Coursera)

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course.

Nov 9th 2026
5-12 Weeks
Exam Prep AI-102: Microsoft Azure AI Engineer Associate (Coursera) Coursera
Whizlabs

Exam Prep AI-102: Microsoft Azure AI Engineer Associate (Coursera)

The AI-102: Designing and Implementing a Microsoft Azure AI Solution certification exam tests the candidate’s experience and knowledge of the AI solutions that make the most of Azure Cognitive Services and Azure services. In addition, the exam also tests the candidate's ability to implement this knowledge by participating in all phases of AI solutions development—from defining requirements, and design to development, deployment, integration, maintenance, performance tuning, and monitoring.

Nov 16th 2026
5-12 Weeks
Programação para todos (Conceitos básicos de Python) (Coursera) Coursera
University of Michigan

Programação para todos (Conceitos básicos de Python) (Coursera)

Este curso tem como objetivo ensinar a todos os conceitos básicos de programação de computadores usando Python. Abordamos o básico de como criar um programa a partir de uma série de instruções simples em Python. O curso não tem pré-requisitos e evita tudo, exceto a matemática mais simples. Qualquer pessoa com experiência moderada em computadores deve ser capaz de dominar os materiais deste curso. Este curso abordará os capítulos 1 ao 5 do livro “Python para Todos”.

Nov 16th 2026
5-12 Weeks
Oracle Cloud Infrastructure Foundations (Udacity) Udacity
Udacity,Oracle

Oracle Cloud Infrastructure Foundations (Udacity)

Develop foundational knowledge of OCI Cloud Services. This course helps you develop a strong foundation in cloud computing while introducing you to core concepts and features of Oracle Cloud Infrastructure (OCI).It also enables you to describe the key features and components of OCI, identify the core OCI service offerings, and understand OCI security model. Plus, you’ll learn the OCI compliance structure and dive deep into OCI pricing, support model, and operations.

Self Paced
Self-Paced
SQL: A Practical Introduction for Querying Databases (Coursera) Coursera
IBM

SQL: A Practical Introduction for Querying Databases (Coursera)

Much of the world's data lives in databases. SQL (or Structured Query Language) is a powerful programming language that is used for communicating with and manipulating data in databases. A working knowledge of databases and SQL is a must for anyone who wants to start a career in Data Engineering, Data Warehousing, Data Analytics, Data Science or Business Intelligence. The purpose of this course is to help you learn and apply foundational and intermediate knowledge of the SQL language, and become familiar with many relational database (RDBMS) concepts along the way.

Nov 16th 2026
5-12 Weeks