Skip to main content

Database Schema

The following is our database schema. A visual version of the schema exists in the Design Document in the form of an Entity-Relationship diagram. Our API will be responsible for CRUD, creating, reading, updating and deleting records into the database. Children's information will be especially restricted with COPPA (Children's Online Privacy Protection Act in mind.)

EntityAttributesKeysRelationships
Classroomscreated_at DATEid INT PK
invite_code VARCHAR(255)
students INT
teacher VARCHAR(255)
title VARCHAR(255)
description VARCHAR(255)
ClassRoomGameMetaDataauthor VARCHAR(255)id VARCHAR(255) PKBelongs to Classrooms
description VARCHAR(255)classroomID INT FK
uploaded DATE
GameMetaDataauthor VARCHAR(255)id VARCHAR(255) PK
description VARCHAR(255)
uploaded DATE

Entities: Classrooms ClassRoomGameMetaData GameMetaData

Attributes: Classrooms: created_at, invite_code, students, teacher, title, description ClassRoomGameMetaData: author, description, uploaded, classroomID GameMetaData: author, description, uploaded

Keys: Primary Keys: Classrooms (id), ClassRoomGameMetaData (id), GameMetaData (id) Foreign Key: ClassRoomGameMetaData (classroomID as a FK referencing Classrooms)

Relationships: ClassRoomGameMetaData belongs to Classrooms.