From 9ee3940d781bc97eb28c30feb73cf36dd3e16558 Mon Sep 17 00:00:00 2001 From: Finlay White <whitef6@cardiff.ac.uk> Date: Mon, 17 Apr 2023 12:53:41 +0100 Subject: [PATCH] waitlisttg --- createdb.sql | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/createdb.sql b/createdb.sql index cfce39e..acbeb46 100644 --- a/createdb.sql +++ b/createdb.sql @@ -61,8 +61,21 @@ CREATE TABLE `Badge`( BadgeID varchar(40) not null unique, primary key(BadgeID), badgeName varchar(35), - badgeDesc varchar(255) - ); + badgeDesc varchar(255), + ageGroup int(1) + ); + DROP TABLE IF EXISTS `WaitList`; + CREATE TABLE `WaitList`( + + studentID varchar(40) unique, + SessionID varchar(40), + dateJoined date, + ageGroup int(1), + FOREIGN KEY (studentID) REFERENCES Students(studentID), + FOREIGN KEY (SessionID) REFERENCES Sessions(SessionID)); + + + DROP TABLE IF EXISTS `BadgeAwarded`; CREATE TABLE `BadgeAwarded`( awardedID int(20) not null unique, @@ -182,6 +195,24 @@ BEGIN END$$ DELIMITER ; +drop procedure if exists `applyToGroup`; +delimiter $$ +CREATE PROCEDURE applyToGroup( + IN studentID varchar(40), + IN SessionID varchar(255), + IN ageGroup int(1)) +BEGIN + DECLARE EXIT HANDLER FOR 1062 + BEGIN + SELECT 'This student is already on a wait list' as ERROR ; + END; + + INSERT INTO WaitList(StudentID,SessionID,dateJoined,ageGroup) values + (StudentID,SessionID,CURDATE(),ageGroup); +END$$ +DELIMITER ; + + drop procedure if exists addStudent; delimiter $$ CREATE PROCEDURE addStudent( -- GitLab