Relational Databases

Projects: In this module, I was tasked to create a relational database. Building off of the database exercise in the first level, the following project is meant to better structure larger amounts of data by reducing redundancy and enforcing accuracy through the utilization of keys. In this case, the class roster includes a Student ID that acts as the primary key by connecting other related fields in order make better use of relational data that will be called upon via a search box.  

In this instance, I used the previous class roster and mapped out five assignments that would be tied to the unique Student ID. Nesting a form within each individual entry allow for individual scores feedback to be recorded and accessed anonymously by relating to the Student ID and not the actual name of the student. Additionally, attaching a date field to feedback allows the instructor to track the progress and make notes that highlight what to examine once a student re-submits an assignment for grading.

This additional information is housed on a third table, allowing grades and comments to remain anonymous by connecting to the student number and not the actual name. Ragic was used to embed database elements into my website as it utilized WordPress shortcodes. Though the interface is a bit clunky, it does help to keep track of the relationships between tables through drag and drop functionality. 

Originally, I wanted to re-visit an idea to integrate a database for housing song requests in the form of a jukebox app. Despite putting together a rather large file that incorporated fields 

 

 

Relational Databases: Students

Assigning a Student ID provides the option to maintain privacy by assigning grades and feedback to a user-specific number. When connected to other tables that house assignments and scores, we should be able to view and calculate a final score for a student by averaging grades in all populated fields. 

Relational Databases: Assignments

By breaking out assignments into a structured format, it is possible to eliminate redundancy and decrease the chance or producing an error when adding scores and comments. 

 

Relational Databases: Grades

The grade database connects the Student ID to a particular assignment and houses fields for sharing feedback that is unique to each student. 

Relational Databases: Song Library

The following table utilizes organizes tracks by genre, mood, and even activity. Much like Pandora’s Music Genome Project, these associations were added manually and can aid in creating playlists on-the-fly, depending on a specific context.

The following form allows users to enter song requests and add their own associations to become part of the living database and expand upon existing groupings. Automatically creating a new ID, helps ensure that each track maintains its own identity and displays properly within the database.

Additionally, the search function moves across all fields, allowing song results to be clicked into in order to display additional song details and a clickable link to the music video on YouTube. While I could not get duplicate information to consolidate, which is one of the objectives of operating within a relational database, the additional fields allow this information to make some interesting connections across very diverse sets of data.

 

 

Relational Databases: Form

Relational Databases: Song Library Search