| CREATE TABLE Departments |
| | ( |
| | departmentid INT, |
| | name VARCHAR(12), |
| | chairperson VARCHAR(12), |
| | PRIMARY KEY(departmentid) |
| | ) |
| ENGINE = INNODB; |
|
|
| CREATE TABLE Buildings ( |
| | buildingid INT, |
| | name VARCHAR(50), |
| | adress VARCHAR(25), |
| | PRIMARY KEY(buildingid) |
| | ) |
| ENGINE = INNODB; |
|
|
| CREATE TABLE Rooms ( |
| | roomnum INT, |
| | buildingid INT, |
| | type VARCHAR(20), |
| | PRIMARY KEY(roomnum), |
| | FOREIGN KEY (buildingid) REFERENCES Buildings (buildingid) |
| | ) |
| ENGINE = INNODB; |
|
|
| CREATE TABLE Faculty ( |
| | empid INT, |
| | departmentid INT, |
| | roomnum INT, |
| | fname VARCHAR(50), |
| | mname VARCHAR(50), |
| | lname VARCHAR(50), |
| | jobtitle VARCHAR(50), |
| | SSN INT, |
| | hire_date DATE(50), |
| | PRIMARY KEY (empid), |
| | FOREIGN KEY (departmentid) REFERENCES Department (departmentid), |
| | FOREIGN KEY (roomnum) REFERENCES Rooms (roomnum) |
| | ) |
| ENGINE = INNODB; |
|
|
| CREATE TABLE Faculty_Phone ( |
| | empid INT, |
| | fphone VARCHAR(15), |
| | type VARCHAR(20), |
| | FOREIGN KEY (empid) REFERENCES Faculty (empid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Faculty_Email ( |
| | empid INT, |
| | femail VARCHAR(30), |
| | type VARCHAR(25), |
| | FOREIGN KEY (empid) REFERENCES Faculty (empid) |
| | ) |
| ENGINE=INNODB; |
|
|
|
|
| CREATE TABLE Courses ( |
| | coursenum INT, |
| departmentid INT, |
| | course_name VARHCAR(15), |
| | course_credit INT(15), |
| | PRIMARY KEY (coursenum), |
| FOREIGN KEY (departmentid) REFERENCES Departments (departmentid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Students ( |
| | studentid INT, |
| | fname VARCHAR(50), |
| | mname VARCHAR(50), |
| | lname VARCHAR(50), |
| | address VARCHAR(50), |
| | emergency_contact VARCHAR(50), |
| | PRIMARY KEY (studentid) |
| | ) |
| ENGINE=INNODB; |
|
|
|
|
| CREATE TABLE Students_Phone ( |
| | studentid INT, |
| | sphone VARCHAR(20), |
| | type VARCHAR(20), |
| | FOREIGN KEY (studentid) REFERENCES Students (studentid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Students_Email ( |
| | studentid INT, |
| | students_emailaddress VARCHAR(20), |
| | type VARCHAR(20), |
| | FOREIGN KEY (studentid) REFERENCES Students (studentid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Parents ( |
| | parentphone INT, |
| | paddress VARCHAR(40), |
| | FOREIGN KEY (studentid) REFERENCES Students (studentid) |
| ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Major ( |
| | studentid INT, |
| | departmentid INT, |
| | name VARCHAR(30), |
| | school VARCHAR(25), |
| | requirements INT, |
| | FOREIGN KEY (studentid) REFERENCES Students (studentid), |
| | FOREIGN KEY (departmentid) REFERENCES Departments (departmentid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Semester ( |
| | semesterid VARCHAR(4), |
| | start_date DATE(50), |
| | end_date DATE(25), |
| | PRIMARY KEY(semesterid) |
| | ) |
| ENGINE = INNODB; |
|
|
| CREATE TABLE Sections ( |
| | sectionid INT, |
| | coursenum INT, |
| | empid INT, |
| | roomnum INT, |
| | semesterid VARCHAR(4), |
| | day VARCHAR(2) |
| | startime TIME, |
| | endtime TIME, |
| | PRIMARY KEY (sectionid), |
| | FOREIGN KEY (coursenum) REFERENCES Courses (coursenum), |
| | FOREIGN KEY (empid) REFERENCES Faculty (empid), |
| | FOREIGN KEY (roomnum) REFERENCES Rooms (roomnum), |
| | FOREIGN KEY (semesterid) REFERENCES semester (semesterid) |
| | ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE GPA ( |
| | letter_grade VARCHAR(2), |
| | credit_points INT, |
| | PRIMARY KEY (letter_grade) |
| ) |
| ENGINE=INNODB; |
|
|
| CREATE TABLE Grades ( |
| | studentid INT, |
| | sectionid INT, |
| | letter_grade VARCHAR(2), |
| | FOREIGN KEY (studentid) REFERENCES Students (studentid), |
| | FOREIGN KEY (sectionid) REFERENCES Sections (sectionid), |
| | FOREIGN KEY (letter_grade) REFERENCES GPA (letter_grade) |
| | ) |
| ENGINE=INNODB; |