The next step in programming Relational Databases
This program will teach you everything you need to know to use a relational database management system in the Web, the Cloud, and embedded applications. Database development and administration skills are required in most Information Technology, Software Engineering, Cybersecurity, and Computer Science jobs. The courses utilize the open-source relational database MySQL. MySQL and its open-source fork, MariaDB, are used in millions of web apps to persist the application data and provide query processing. Students gain valuable hands-on experience programming SQL queries in the labs. In addition to the applied SQL labs, you will also gain an understanding of relational databases in general, learning how to design your database so it’s robust and efficient. Furthermore, you will harness that power by learning SQL and using it to build databases, populate them with data, and query that data through extensive hands-on practices.
What you’ll learn
- Utilize different data types to store data in the database.
- Develop queries that utilize other subqueries to solve problems.
- Aggregate data to understand the underlining detail data better.
- Design Databases that can provide correct results.
Course Content
- Introduction –> 1 lecture • 4min.
- Week 6 – Aggregate Queries –> 3 lectures • 19min.
- Week 7 – Subqueries –> 3 lectures • 19min.
- Week 8 – Data Types –> 2 lectures • 21min.
- Week 9 – Functions –> 5 lectures • 38min.
- Week 10 – Database Design –> 3 lectures • 31min.
Requirements
This program will teach you everything you need to know to use a relational database management system in the Web, the Cloud, and embedded applications. Database development and administration skills are required in most Information Technology, Software Engineering, Cybersecurity, and Computer Science jobs. The courses utilize the open-source relational database MySQL. MySQL and its open-source fork, MariaDB, are used in millions of web apps to persist the application data and provide query processing. Students gain valuable hands-on experience programming SQL queries in the labs. In addition to the applied SQL labs, you will also gain an understanding of relational databases in general, learning how to design your database so it’s robust and efficient. Furthermore, you will harness that power by learning SQL and using it to build databases, populate them with data, and query that data through extensive hands-on practices.
This self-paced program provides an undergraduate-level introduction to database programming and administration that will help prepare students for advanced undergraduate computer science, information technology, or cybersecurity coursework.
Course Objectives
By the end of this program, students should be able to:
- Apply queries in relational algebra to retrieve data.
- Apply queries in SQL to create, read, update, and delete data in a database.
- Apply the concepts of entity integrity constraint and referential integrity constraint (including the definition of the concept of a foreign key).
- Describe the normal forms (1NF, 2NF, 3NF, BCNF, and 4NF) of a relation.
- Apply normalization to a relation to create a set of BCNF relations and denormalize a relational schema.
- Describe functional dependency between two or more attributes that are a subset of a relation.
- Understand multi-valued dependency and identify examples in relational schemas.
- Sketch conceptual data models (including ER) to describe a database structure.
- Apply SQL to create a relational database schema based on conceptual and relational models.
- Apply stored procedures, functions, and triggers using a commercial relational DBMS.
- Describe concurrency control and how it is affected by isolation levels in the database.
This is the 2nd course of 3 in the program and focuses on more advanced querying of the database. We will drill into aggregation, subqueries, data types, function and database design.