     requirer_course_id INT(10) NOT NULL,
     required_course_id INT(10) NOT NULL,
     PRIMARY KEY (requirer_course_id, required_course_id),
-    FOREIGN KEY (requirer_course_id) REFERENCES Courses(course_id) ON DELETE CASCADE,
-    FOREIGN KEY (required_course_id) REFERENCES Courses(course_id) ON DELETE CASCADE
+    FOREIGN KEY (requirer_course_id) REFERENCES Courses(course_id) 
+        ON DELETE CASCADE 
+        ON UPDATE CASCADE,
+    FOREIGN KEY (required_course_id) REFERENCES Courses(course_id) 
+        ON DELETE CASCADE
+        ON UPDATE CASCADE
 ) DEFAULT CHARACTER SET = utf8;
 
 CREATE TABLE IF NOT EXISTS Courses_Curricula(
     curriculum_id INT(10) NOT NULL,
     course_id INT(10) NOT NULL,
     PRIMARY KEY (curriculum_id, course_id),
-    FOREIGN KEY (curriculum_id) REFERENCES Curricula(curriculum_id) ON DELETE CASCADE,
-    FOREIGN KEY (course_id) REFERENCES Courses(course_id) ON DELETE CASCADE
+    FOREIGN KEY (curriculum_id) REFERENCES Curricula(curriculum_id) 
+        ON DELETE CASCADE
+        ON UPDATE CASCADE,
+    FOREIGN KEY (course_id) REFERENCES Courses(course_id) 
+        ON DELETE CASCADE
+        ON UPDATE CASCADE
 ) DEFAULT CHARACTER SET = utf8;
 
 CREATE TABLE IF NOT EXISTS Sections(

    leave_type CHAR(1) NOT NULL,
    leave_description VARCHAR(255),
    PRIMARY KEY (sid, semester, year),
    FOREIGN KEY (sid) REFERENCES Students(sid) ON DELETE NO ACTION
) DEFAULT CHARACTER SET = utf8;

CREATE TABLE IF NOT EXISTS Projects(

    gpa REAL,
    gpax REAL,
    PRIMARY KEY (sid, semester, year),
    FOREIGN KEY (sid) REFERENCES Students(sid) 
        ON DELETE NO ACTION
        ON UPDATE CASCADE
) DEFAULT CHARACTER SET = utf8;

CREATE TABLE IF NOT EXISTS Leaves(
