Relational Database Implementation and Applications (Coursera)

Offered by Illinois Tech,
Relational Database Implementation and Applications (Coursera)

In today's data-driven world, the ability to work with relational databases is an essential skill for professionals in various fields. This course is designed to equip you with the knowledge and practical skills needed to become proficient in database management and application development. Whether you are pursuing a career as a database administrator, software developer, or data analyst, this course provides you with a strong foundation to excel in your chosen field.

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

By the end of this course, students will be able to:
• Describe relational databases and their core components, including tables, rows, columns, and keys.
• Implement relational database and usage of indexes, views, triggers, temporary tables, functions, and stored procedures.
• Describe their role in enforcing business logic and data integrity in database environment.
• Apply database design and SQL knowledge to real-world application development.
• Develop database-driven applications using programming languages, such as Java, Python or C/C++ and frameworks.
• Describe the concepts of indexing and hashing in efficient support for search operations.
• Describe the concepts of transactions and their properties (ACID: Atomicity, Consistency, Isolation, Durability).
• Define concurrency control and understand the impact of uncontrolled concurrent transactions on data integrity.
Recommended Pre-Requisites: CS 725 (Intro to Relational Databases) & CS 726 (Relational DB Design), Intermediate knowledge in Java, Python, C/C++ programming.

Software Requirements: VS Code editor, MySQL Workbench, PostgreSQL

What you'll learn

  • Implement relational database and usage of indexes, views, triggers, temporary tables, functions, and stored procedures.
  • Develop database-driven applications using programming languages, such as Java, Python or C/C++ and frameworks.
  • Describe transaction and concurrency control concepts in relational databases.

Syllabus

Module 1: Indexes, Views, Functions, and Stored Procedures
Welcome to Relational Database Implementation and Applications! In Module 1 of this course, you'll delve into the fundamental aspects of building relational databases. You'll learn about implementing indexes, views, triggers, functions, and stored procedures in relational databases. We'll highlight the significance of these elements in databases and how they enhance query performance. You'll explore the creation of both simple and complex views, understanding how they offer data abstraction benefits and the versatility of managing data through views. Additionally, you'll gain experience in creating and optimizing database operations using user-defined functions, triggers, and stored procedures in SQL, thus acquiring comprehensive knowledge of accurate business logic implementation and performance optimization techniques.

Module 2: Advanced Window Functions and OLAP Queries in SQL
Module 2 of this course offers an immersive exploration of the powerful world of SQL window functions and OLAP (Online Analytical Processing) concepts. You will learn about the definition and benefits of window functions, gaining proficiency in advanced applications such as RANK(), DENSE_RANK(), LEAD(), LAG(), NTILE(n), PERCENT_RANK(), and CUME_DIST(). Additionally, you'll develop the skills to control window function behavior using PARTITION BY and ORDER BY clauses, define custom window frames with RANGE and ROWS clauses, and design, query, and analyze OLAP datasets using ROLL-UP and DRILL-DOWN levels of aggregation.

Module 3: Database Application Development
In Module 3 of this course, you'll learn how to develop database applications using versatile programming languages such as Java, Python, or C++. You'll discover how to establish connections to databases, perform essential CRUD (Create, Read, Update, Delete) operations, and write code that supports SQL features like triggers, functions, and stored procedures used to facilitate complex queries in relational databases. The focus will be on robust database interactions, including error and exception handling to address connection issues, query failures, and data validation, ensuring the reliability of your applications.

Module 4: Indexing and Hashing
Module 4 of this course provides an in-depth understanding of indexing within database systems. You'll define indexing and grasp its critical importance. Through comprehensive exploration, you'll differentiate between various types of indexes, including ordered and hash indexes, primary and secondary indexes, as well as multi-level and single-level indexes. Additionally, you'll delve into the structure of B+-trees, including nodes and leaves, and learn how these structures maintain balance, supporting efficient search operations. You'll also gain insight into B+-tree insertion and deletion operations.

Module 5: Transaction Concepts
In Module 5, you will enter into the world of database transactions and their critical role in ensuring data consistency and integrity. You will gain a comprehensive understanding of the four ACID properties (Atomicity, Consistency, Isolation, Durability) and their significance in maintaining the reliability of transactions. Additionally, you'll explore techniques for managing concurrent access to data, including discussions on COMMIT and ROLLBACK behaviors, serial and serializable schedules, and conflict serializability tests using graph-based techniques. This module will also cover concepts like equivalent serial schedules, recoverability, and cascade-less schedules, empowering you to design and manage complex database systems with confidence and precision.

Module 6: Concurrency Control
Module 6 focuses on concurrency control in database management systems. You'll define concurrency control and understand its significance in maintaining data integrity while delving into the principles of lock-based concurrency control. This module will cover key concepts such as shared and exclusive lock types, lock modes, lock compatibility, and introduce the two-phase locking protocol with its guarantees. Additionally, you'll gain insights into how transactions acquire and release locks within this protocol, and you'll explore the concept of deadlocks and their underlying causes, equipping you with essential knowledge to manage concurrent access effectively and prevent data integrity issues in database systems.

Summative Course Assessment
This module contains the summative course assessment that has been designed to evaluate your understanding of the course material and assess your ability to apply the knowledge you have acquired throughout the course.

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

Related Courses

Introdução às Tecnologias Blockchain (Coursera) Coursera
INSEAD

Introdução às Tecnologias Blockchain (Coursera)

Nesse primeiro curso de especialização, discutiremos as limitações da internet para os negócios e atividades econômicas, e explicaremos como a tecnologia blockchain representa o caminho ara evoluir. Depois de completar esse curso, você será capaz de explicar como a blockchain é, como funciona, e porque é revolucionária.

Sep 14th 2026
5-12 Weeks
IBM Data Analyst Capstone Project (Coursera) Coursera
IBM

IBM Data Analyst Capstone Project (Coursera)

In this course you will apply various Data Analytics skills and techniques that you have learned as part of the previous courses in the IBM Data Analyst Professional Certificate. You will assume the role of an Associate Data Analyst who has recently joined the organization and be presented with a business challenge that requires data analysis to be performed on real-world datasets. You will undertake the tasks of collecting data from multiple sources, performing exploratory data analysis, data wrangling and preparation, statistical analysis and mining the data, creating charts and plots to visualize data, and building an interactive dashboard.

Sep 14th 2026
5-12 Weeks
Learn SQL with Databricks (Coursera) Coursera
Edureka

Learn SQL with Databricks (Coursera)

Welcome to the Learn SQL with Databricks course, where you'll embark on a journey to acquire essential skills in database management, data analysis, and advanced data manipulation techniques. This course is meticulously designed to guide you through the intricacies of SQL, leveraging the powerful and versatile Databricks platform.

Sep 28th 2026
5-12 Weeks
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.

Sep 14th 2026
4 Weeks
Relational Database Support for Data Warehouses (Coursera) Coursera
University of Colorado System

Relational Database Support for Data Warehouses (Coursera)

Relational Database Support for Data Warehouses is the third course in the Data Warehousing for Business Intelligence specialization. In this course, you'll use analytical elements of SQL for answering business intelligence questions. You'll learn features of relational database management systems for managing summary data commonly used in business intelligence reporting. Because of the importance and difficulty of managing implementations of data warehouses, we'll also delve into storage architectures, scalable parallel processing, data governance, and big data impacts. In the assignments in this course, you can use either Oracle or PostgreSQL.

Sep 14th 2026
5-12 Weeks
Database Design and Basic SQL in PostgreSQL (Coursera) Coursera
University of Michigan

Database Design and Basic SQL in PostgreSQL (Coursera)

In this course you will learn more about the historical design of databases and the use of SQL in the PostgreSQL environment. Using SQL techniques and common commands (INSERT INTO, WHERE, ORDER BY, ON DELETE CASCADE, etc) will enable you to create tables, column types and define the schema of your data in PostgreSQL. You will learn about data modeling and how to represent one-to-many and many-to-many relationships in PostgreSQL.

Sep 14th 2026
Self-Paced
Uso de bases de datos con Python (Coursera) Coursera
University of Michigan

Uso de bases de datos con Python (Coursera)

Este curso presentará a los estudiantes los conceptos básicos del lenguaje de consulta estructurado (Structured Query Language, SQL), así como el diseño básico de bases de datos para almacenar datos como parte de una iniciativa de varios pasos para recopilar, analizar y procesar datos. El curso utilizará SQLite3 como base de datos. También crearemos rastreadores web y procesos de visualización y recopilación de datos de varios pasos. Utilizaremos la biblioteca D3.js para realizar la visualización básica de datos.

Sep 14th 2026
5-12 Weeks