Database Design

Learn relational database Design with practical concepts and examples. This series works with any database system!
Rating: 4.2 out of 5 (3,086 ratings)
92,003 students
Database Design
Rating: 4.2 out of 5 (3,086 ratings)
92,003 students
Learn the definition of relations, tuples, attributes, and over one hundred other vocabulary words!
Learn all of the types of relationships and how to properly design them all within a database. This includes one to one, one to many, and many to many. You will also learn about the difference between a parent table and a child table
Learn about all of the types and categories of keys including superykeys, candidate keys, primary keys, alternate keys, natural keys, surrogate keys, simple keys, compound keys, composite keys, and foreign keys
Learn database normalization. We will be learning the first 3 normal forms of database normalization. This will reduce redundant and incorrect data as well as protect our database integrity
Learn about data, data types, foreign key constraints, and other important concepts used to create the best database
Learn to design a database from beginning to end!


  • Take notes as you go through the course
  • Study the material from each video and memorize the content
  • Memorize the terms given in each video as well as any design techniques, such as using atomic values, the definition of 1NF, etc...
  • You will need tools that allow you to practice designing databases. This could be anything from a pen and paper to premium software. This course will be using a large chalkboard for the first half of the course and then free design software later on. Just know that you will not be required to pay for any design tools!
  • Read any supplementary material provided and attempt to memorize the content and apply it to what you already know
  • Be CREATIVE! Database design is not only a technical skill, but it is also an art! This course will teach you the technical aspects of design as well as the artistic side
  • Be determined. Database design can be a daunting task. It's scary, but easy once you get the hang of things


Whichever database application you use does not matter! This course will cover design concepts for all relational database management systems. This course is designed for those who want to download this course or watch it ad free. This is a course for relational database design. Here are some examples of the most popular databases:

  • MySQL
  • Oracle
  • Microsoft SQL Server
  • PostgreSQL
  • SQLite
  • MiariaDB
  • and MORE!

We start off this course by taking our time to first look at what a database is and how it differs from a spreadsheet, website, filing cabinet, and so forth. We introduce SQL and talk about data definition language and data manipulation language. After about 4 solid videos of explaining databases and SQL, we dive into learning about entities and attributes. We apply all of these concepts to structure tables and relationships. We learn to design all of the relationships and I explain everything in depth.

Most of the videos are on my chalkboard, explaining concepts. This is because it helps to fully understand database design before you dive into designing your own database. Once we go over all of the concepts of database design we will be designing databases from start to finish.

No programming skills are required. This course does not program a database. This course will only be teaching how to best design your database. You may be wondering why such a large course is required for only designing a database. Well, designing a database is an extremely important part of database management. The best design will get us the best results and make programming our database really easy.

After this course you should be able to tackle almost any database design project with confidence and skill. Keep in mind though that learning database design takes a lot of time and effort. Be sure to take notes and stop after each video to reflect on what you've learned. Keeping notes will make this video course a whole lot easier!

Who this course is for:

  • Anyone working with relational databases. This course starts from the beginning. No prior knowledge is required but will of course make things easier and more clear to you
  • This course is perfect for anyone with an intermediate level of skill. We will be discussing all of the major concepts in database design and this course will help you refresh your skills or bring you to the advanced level

Course content

8 sections • 52 lectures • 8h 23m total length
  • Introduction
  • What is a Database?
  • What is a Relational Database?
  • Introduction to SQL
  • Naming Conventions
  • What is Database Design?
  • Data Integrity
  • Database Terms
  • More Database Terms
  • Atomic Values


Educator, YouTube Partner.
Caleb Curry
  • 4.3 Instructor Rating
  • 8,102 Reviews
  • 218,591 Students
  • 9 Courses

Hi! I'm Caleb. I have created over 1,500 tutorials on data, software development, cryptocurrency, etc. I believe that the way I teach is what matters. I don’t flash big words without explaining them and I don’t assume knowledge.

I keep it simple

My goal is to simplify complex problems for anyone to understand. I'm not your typical "teachers who can create an entire course without actually explaining anything.

I keep it detailed

I also like to be thorough. If you watch my content and don’t leave with a new understanding, then I am not doing my job.

I keep it fun

My primary goal is not to put you to sleep as I read an encyclopedia from slides (I prefer dictionaries). Actually, I kinda hate Powerpoint. My unique approach has caused my videos to be watched 91 years (that’s 800K hours of watchtime on YouTube alone).

I am now a tech trainer with this resume:

170k+ YouTube subscribers

180k+ Udemy students

Ex-IBMer and Ex-Software Engineer

O’reilly Live trainer and course author

International speaker on data and Software Development

10 years of coding experience

I love teaching, and I’m beyond excited to have you join me in the learning process.


June 4th, 2012.  I decided to take my skill set to the next level and learn how to professionally program databases as well as websites.  After just graduating my Junior year of high school, I did not have a typical summer vacation.  Rather, I studied daily and prepared for this new goal of mine.  By July 23rd, I uploaded my first class in this new mindset of determination.  Since then, I have created over 1,500 educational classes over database Design, programming, web development, and more.