Intro to Relational Databases
via Udacity
-
480
-
- Write review
Overview
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.
Why Take This Course?
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.
Syllabus
Lesson 1: Data and Tables
In this lesson, you'll learn about how relational databases let you structure data into tables. You'll learn about the importance of unique keys and relationships between tables.
Lesson 2: Elephants Elements of SQL
In this lesson, you'll begin learning SQL, the Structured Query Language used by most relational databases. You'll learn about the select and insert statements, the basic operations for getting data out of a database and putting data into a database. You'll learn about the operators and syntax available to get the database to scan and join tables for you.
Lesson 3: Python DB-API
In this lesson, you'll learn how to access a relational database from Python code. You'll use a virtual machine (VM) running on your own computer to run a Python web application, and adapt that application to use a database backend. Then you'll learn about some of the most common security pitfalls of database-backed applications, including the famous Bobby Tables. This lesson also covers the SQL update and delete statements.
Lesson 4: Deeper Into SQL
In this lesson, you'll learn how to design and create new databases. You'll learn about normalized design, which makes it easier to write effective code using a database. You'll also learn how to use the SQL join operators to rapidly connect data from different tables.
Lesson 5: Final Project
In this project, you'll use your Python and SQL knowledge to build a database-backed Python module to run a game tournament. You'll design the database schema and write code to implement an API for the project.
Taught by
Karl Krueger
Tags
Related Courses
-
Databases and SQL for Data Science with Python
IBM
2.0 -
Using Databases with Python
University of Michigan
4.7 -
Developing Applications with SQL, Databases, and Django
IBM
-
Database Management Essentials
University of Colorado System
3.8 -
Introduction to Relational Databases
IBM
-
Introduction to Relational Databases in SQL
Reviews
2.0 rating, based on 8 reviews
-
Gregory J Hamel ( Life Is Study) completed this course and found the course difficulty to be easy.
Intro to Relational Databases is a short 4 lesson course offered by Udacity that covers the basics of SQL databases. Lessons 1 and 2 cover basic SQL querying, including grouping, ordering and inner joins, lesson 3 addresses inserts and concerns when using... -
Anonymous is taking this course right now.
Taking this course now. Having considerable trouble with getting the required tools (the vagrant environment) in place so that I can just move on to the 3rd lesson. I have spent countless hours trying to get it stood up. Apparently, they do have answers... -
Anonymous completed this course.
I took and finished this course a while ago, it improved my skillset with Relational DB. Learned things like HAVING and subqueries, etc. And enjoyed the zoo example. I just feel like the current 2 stars for this class is definitely a bit harsh. Though I do agree yah getting Vagrant to work to do the assignments may have been a bit out of the scope of Relational DB, but also, my experience working as a software engineer for 7 years has been that in a work environment, you do find many times you have to overcome setup issues, environment/tool configuration issues, etc. I think this course could be a good fit for many learners. -
Anonymous completed this course.
This course, like most courses within Full Stack Web Developer Nanodegree, are not for beginners... As a beginner, I have spent countless hours trying to fill in the gaps. It is very very frustrating. I have completed 5 (I think? Maybe 4) courses within the nanodegree and although I have learned a lot, it has been extremely frustrating having to find a lot of answers myself, as a beginner, googling in the dark. I posted answers to the numerous problems I encountered so to make your life a little easier, at www.ajoannaproject.wordpress.com. -
Anonymous is taking this course right now.
Not enough information is given in the lectures to complete the programming assignments, especially lesson 3. Very frustrating. I give it one star, because it's free. However, I think you'd be better off with just google, stack exchange, and reddit.com/r/learnpython. -
Instructions for installing VM and vagrant do not work. The URL to access the virtual machine is no longer valid...
Overall, the first 2 lessons were decent. But spent hours trying to get software installed to start lesson 3 and hit a wall.
-
Anonymous completed this course.
well, instructions are not enough to complete the project. I find it very poor, and compared to other courses database lectures are not sufficient. -
William Nguyen completed this course.