Mastering Databases
Middle School – Wizard Level II – Class 2
About Mastering Databases
Students in our Mastering Databases course learn how to create truly useful, portfolio-quality, interactive web applications utilizing multi-table databases. Students master complex queries to create, read, update and delete database records. The complex programming and queries included in this course are made fun and easy through enjoyable and engaging projects.
Learning Objectives
When students complete Mastering Databases, they will be able to:
- Database structure and design
- SQL statements to read, create, modify, delete and sort information
- Learn to aggregate data and to limit results to return data efficiently and effectively
- 1. Data is EverywhereDatabases are made up of tables and accessed with SQL.
In this lesson, students explore how databases are made up of tables. SQL statements are used to access information in a database. Students read data from a database and insert new data into a table and check for correctness.
- 2. Let’s Create DataUtilize the Python module SQLite3 to create a new database.
In this lesson, students create a new database from scratch using SQLite and Python. Students create tables and store data for grocery store items. Multiple items are stored at a time and the output is formatted.
- 3. Let’s Filter DataFilter data from a database to show only what you need.
In this lesson, students use the shopping cart database from the previous lesson to filter and sort data for different reporting needs. Students learn how to avoid repeating data in their queries and how to create simple database reports using relational operators.
- 4. Let’s Change DataExtend your database functionality by updating data.
In this lesson, students create an engaging “to-do list” web application. Python and SQLite are used to create a new database and tables. Data in the list is changed using primary keys and auto incrementing as students complete and add tasks to the “to-do list”.
- 5. C.R.U.D. TalesUse delete query to delete data from a database table.
In this lesson, students complete C.R.U.D. (create, retrieve, update and delete) operations to a database. Students practice performing CRUD operations on a scoreboard table with their favorite athletes and statistics. This lesson adds the final piece to basic database SQL skills.
- 6. My Notebook 1 – Midterm ProjectCreate useful notebook application with your database programming skills.
In this lesson, students apply their knowledge of Python and SQLite commands to develop the first part of a notebook web application. Students create the database structure and add the code to allow for the creation, updating, and deletion of “sticky note” type memos in a useful application.
- 7. My Notebook II – Midterm ProjectUse Ajax requests to update a database.
In this lesson, students draw on past Ajax API skills to create an interface into the notebook database. Students learn how to use the commit statement to save changes to the database. Students complete the portfolio-worthy mid-term notebook web application.
- 8. Let’s Aggregate DataLimit the amount of data returned from large databases.
In this lesson, students deal with large amounts of data and learn how to limit results with the offset feature. Students learn about data aggregation and use a large database of music artists and songs to build a variety of queries to manage the data effectively.
- 9. Let’s Filter Data IIDisplay data from two or more columns as a single column.
In this lesson, students use the || syntax operator to display multiple columns of data as a single column. Students learn how to exclude null records from a query result and how to count the number of records meeting a criteria in a database by using operators.
- 10. Let’s Join DataUse join queries to access data stored in multiple tables.
In this lesson, students use a university database to explore using multiple data tables in a variety of ways. Students learn different join strategies – explicit, implicit, inner, outer, left, and right to meet requirements. They’ll also filter and sort joined data in useful ways.
- 11. Final Project 1 – Let’s Create a To–Do ListCreate and manage user login accounts.
In part I of this final project, students learn how to create and manage user login accounts as part of a “to do list” website application. Ajax commands and database skills are used to create a username and password database and allow users to log into the application. This will create a multi-user “to do list” application.
- 12. Final Project II – Continuing Our To-Do ListIntegrate database applications with login/logout functionality to add scalability.
In this final lesson, students integrate the user login/logout features created in the previous course with the “to-do list” functionality created in a website application earlier in the class. The result is a scalable, multi-user application that showcases the skills and knowledge learned throughout the class. Students graduate with solid foundational database skills as well as advanced Python and Ajax skills.
Online Multiplayer Gaming
Games are more fun with friends. Until now we have been building single-player games, in this course, we use server-side tools to create a multiplayer game that uses a database to save scores and keep players in sync.
Class Schedule
All students start in Intro to Programming at Wizard Level I. If you have previous coding experience, take the Advanced Placement test. Returning students can continue with the class where they left off.
- Intro to Programming (CLASS FULL)on Mondays & Thursdays (6 weeks, 2 classes per week)
- Intro to Programming (CLASS FULL)on Fridays (12 weeks, 1 class per week)
- Intro to Programming (CLASS FULL)on Sundays (12 weeks, 1 class per week)
- Intro to Programming (CLASS FULL)on Tuesdays (12 weeks, 1 class per week)
- Intro to Programmingon Wednesdays (12 weeks, 1 class per week)
- Intro to Programmingon Saturdays (12 weeks, 1 class per week)
- Intro to Programmingon Thursdays (12 weeks, 1 class per week)
- Intro to Programmingon Sundays (12 weeks, 1 class per week)
- Intro to Programmingon Tuesdays & Fridays (6 weeks, 2 classes per week)
#1 Most Comprehensive Program for Your Student’s Success!
The CodeWizardsHQ program comes with everything your child needs to be successful in learning to code.
All of the below are included at no extra cost.
Course Duration & Time Commitment
All courses are 12 weeks long. A Wizard will receive a certification for their achievement at the end of the course.
Expect a weekly time commitment of 2-3 hours. 1 hour of class time, plus 1-2 hours of practice time, with instructors support throughout, including weekends.
100% Guarantee
Our goal is to make all our students successful. If your child is not happy with our program, please notify us within the first four class sessions and you will receive a full refund.