This course provides you with the opportunity to learn about relational database design. You will be provided an in-depth understanding of the design principles and methodologies involved in creating well-structured, normalized, and efficient relational databases to manage data for small, medium, and large-scale enterprises.
Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.
Possessing database design skills will enable you to excel in careers such as Database Administrators, Data Analysts, Software Developers, Data Engineers, and Business Intelligence Developers; capitalizing on the ability to create robust and efficient data solutions for any organization. These are one of the top sought-after careers across many industries today.
At the end of this course, you will be able to:
- Describe the process and the design aspects involved in relational database design.
- Interpret the main components of an Entity-Relationship diagram (ERD) using unified modeling language (UML) notation.
- Develop entity-relationship diagrams using basic and extended Entity-relationship features in relational design.
- Translate Entity-Relationships diagrams into logical schemas (relation schemas).
- Describe the theory and practical application of functional dependencies in relational database design.
- Use the theory to recognize candidate keys and primary keys.
- Derive minimal and canonical covers of functional dependencies.
- Describe the principles of database normalization.
- Identify and apply normalization techniques.
What you'll learn
- Describe the process and the design aspects involved in relational database design.
- Develop entity-relationship diagrams using basic and extended Entity-relationship features in relational design.
- Identify and apply normalization techniques.
Syllabus
Module 1: Design Overview
This module is organized in three lessons: 1) Entity-Relationship (E-R) modeling, 2) E-R diagrams, and 3) Extended ER features and relation schemas. The learning objectives of this module are presented below. Refer to the enrichment activities at the end of each lesson.
Module 2: Functional Dependency (FD)
This module explores the theory and practical application of functional dependencies in relational database design, providing students with the knowledge and skills to identify and enforce data relationships, ensuring data integrity and optimization in database systems. This module is organized into three lessons: 1) Functional dependency theory, 2) Finding candidate keys and attribute closure, and 3) Deriving canonical (minimal) covers of functional dependencies. The learning objectives of this module are presented below. Please refer to the enrichment activities at the end of each lesson.
Module 3: Database Normalization
The database normalization module demonstrates the principles and techniques of organizing data into well-structured tables through normalization, ensuring data integrity and reducing redundancy for efficient and scalable database systems. This module is organized in three lessons: 1) Normal Forms (NFs), 2) more Normal forms, and 3) DB Design example (applying ER modeling + Normalization). The learning objectives of this module include are presented below. Refer to the enrichment activities at the end of each lesson.
Summative Course Assessment