-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathdatabase.sql
More file actions
64 lines (50 loc) · 3.19 KB
/
Copy pathdatabase.sql
File metadata and controls
64 lines (50 loc) · 3.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
use fairnsimple;
create table if not exists student(registrationNo int primary key, firstName varchar(15),lastName
varchar(15), emailID varchar(50),password varchar(50), lastActive
datetime, profilePic longblob);
create table if not exists teacher(teacherID int primary key, firstName varchar(15),lastName
varchar(15), emailID varchar(50), password varchar(50), lastActive
datetime, profilePic longblob);
create table if not exists course(courseID int primary key auto_increment, courseCode varchar(8), courseName
varchar(20), courseDescription varchar(200), teacherID int, foreign key (teacherID) references teacher(teacherID)
on delete set null);
create table if not exists enrollment(courseID int, registrationNo int, foreign key (courseID)
references course(courseID) on delete cascade, foreign key (registrationNo)
references student(registrationNo) on delete cascade);
-- create table exam(examID int primary key, courseID int, proctorID int,
-- title varchar(20),description varchar(250), maximumMarks int,
-- questionPaper varchar(50), answerKey varchar(50), startTime datetime,
-- endTime datetime, foreign key (courseID) references course(courseID)
-- on delete cascade, foreign key (proctorID) references teacher(teacherID) on
-- delete set null);
create table if not exists exam(examID int primary key AUTO_INCREMENT, courseID int, proctorID int,
teacherID int, title varchar(20), description varchar(250), maximumMarks int, startTime datetime,
endTime datetime, foreign key (courseID) references course(courseID) on delete cascade,
foreign key (teacherID) references teacher(teacherID) on delete set null,
foreign key (proctorID) references teacher(teacherID) on delete set null);
create table if not exists exam_questions(questionID int primary key AUTO_INCREMENT, examID int,
question varchar(200), optionA varchar(200), optionB varchar(200), optionC varchar(200),
optionD varchar(200), correctOption int, foreign key (examID) references exam(examID) on delete cascade);
create table if not exists submission(submissionID int primary key AUTO_INCREMENT, registrationNo int, examID int,
questionID int, selectedOption int, foreign key (examID) references exam(examID) on delete set null,
foreign key (registrationNo) references student(registrationNo) on delete cascade);
create table message(messageID int primary key auto_increment, senderID int, courseID int, text varchar(10000),
image longblob,sentAt timestamp, isStudent bool, foreign key (courseID) references fairnsimple.course(courseID));
create table answer_files(
examID int(11) references exam(examId),
registrationNo int(11) references student(registrationNo),
courseID int(11) references course(courseID),
answerPath varchar(200) not null);
create table exam_questions_marks(
registrationNo int(11) references student(registrationNo),
examID int(11) references exam(examId),
questionID int(11) references exam_questions(questionID),
correct int(11));
create table objective_response(
questionID int(11) references exam_questions(questionID),
registrationNo int(11) references student(registrationNo),
marked int(11),
examID int(11) references exam(examId));
create table proctor_port(
examID int(11) references exam(examID),
proctorPort int(11));