Advertisement
Guest User

Untitled

a guest
Apr 9th, 2018
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.98 KB | None | 0 0
  1. CREATE DATABASE DbExamOnline;
  2. USE DbExamOnline;
  3.  
  4. CREATE TABLE Role(
  5. _id VARCHAR(3) PRIMARY KEY,
  6. _name VARCHAR(30) NOT NULL,
  7. _status BIT NOT NULL DEFAULT 1
  8. );
  9.  
  10. CREATE TABLE User(
  11. _id VARCHAR(7) PRIMARY KEY,
  12. _role_id VARCHAR(3) NOT NULL,
  13. FOREIGN KEY (_role_id) REFERENCES Role(_id),
  14. _name VARCHAR(30) NOT NULL,
  15. _user_type BIT,
  16. _email VARCHAR(100) UNIQUE,
  17. _password VARCHAR(100) NOT NULL,
  18. _status BIT NOT NULL DEFAULT 1
  19. );
  20.  
  21. CREATE TABLE Class(
  22. _id VARCHAR(7) PRIMARY KEY,
  23. _description VARCHAR(100),
  24. _user_id VARCHAR(7) NOT NULL,
  25. FOREIGN KEY (_user_id) REFERENCES User(_id),
  26. _status BIT NOT NULL DEFAULT 1
  27. );
  28.  
  29. CREATE TABLE Student(
  30. _id VARCHAR(7) PRIMARY KEY,
  31. _name VARCHAR(30) NOT NULL,
  32. _email VARCHAR(100) UNIQUE NOT NULL,
  33. _password VARCHAR(100) NOT NULL,
  34. _class_id VARCHAR(7) NOT NULL,
  35. FOREIGN KEY (_class_id) REFERENCES Class(_id),
  36. _status BIT NOT NULL DEFAULT 1
  37. );
  38.  
  39. CREATE TABLE Course(
  40. _id VARCHAR(7) PRIMARY KEY,
  41. _name VARCHAR(100),
  42. _user_id VARCHAR(7),
  43. FOREIGN KEY (_user_id) REFERENCES User(_id),
  44. _description VARCHAR(100),
  45. _status BIT NOT NULL DEFAULT 1
  46. );
  47.  
  48. CREATE TABLE StudentCourse(
  49. _student_id VARCHAR(7),
  50. FOREIGN KEY (_student_id) REFERENCES Student(_id),
  51. _course_id VARCHAR(7),
  52. FOREIGN KEY (_course_id) REFERENCES Course(_id),
  53. PRIMARY KEY (_student_id, _course_id)
  54. );
  55.  
  56. CREATE TABLE QuestionType(
  57. _id VARCHAR(3) PRIMARY KEY,
  58. _title VARCHAR(20) NOT NULL,
  59. _status BIT NOT NULL DEFAULT 1
  60. );
  61.  
  62. CREATE TABLE Question(
  63. _id VARCHAR(7) PRIMARY KEY,
  64. _question_type_id VARCHAR(3) NOT NULL,
  65. FOREIGN KEY (_question_type_id) REFERENCES QuestionType(_id),
  66. _content VARCHAR(200),
  67. _point INT NOT NULL,
  68. _course_id VARCHAR(7) NOT NULL,
  69. FOREIGN KEY (_course_id) REFERENCES Course(_id),
  70. _status BIT NOT NULL DEFAULT 1
  71. );
  72.  
  73. CREATE TABLE Answer(
  74. _id VARCHAR(10) PRIMARY KEY,
  75. _content VARCHAR(100) NOT NULL,
  76. _question_id VARCHAR(7) NOT NULL,
  77. FOREIGN KEY (_question_id) REFERENCES Question(_id),
  78. _is_correct BIT NOT NULL DEFAULT 0
  79. );
  80.  
  81. CREATE TABLE Exam(
  82. _id VARCHAR(7) PRIMARY KEY,
  83. _name VARCHAR(100),
  84. _user_id VARCHAR(7),
  85. FOREIGN KEY (_user_id) REFERENCES User(_id),
  86. _num_of_question INT NOT NULL,
  87. _course_id VARCHAR(7) NOT NULL,
  88. FOREIGN KEY (_course_id) REFERENCES Course(_id),
  89. _duration INT NOT NULL,
  90. _start_time DATETIME
  91. );
  92.  
  93. CREATE TABLE ExamQuestion(
  94. _exam_id VARCHAR(7) NOT NULL,
  95. FOREIGN KEY (_exam_id) REFERENCES Exam(_id),
  96. _question_id VARCHAR(7) NOT NULL,
  97. FOREIGN KEY (_question_id) REFERENCES Question(_id),
  98. PRIMARY KEY (_exam_id, _question_id)
  99. );
  100.  
  101. CREATE TABLE ExamStudent(
  102. _exam_id VARCHAR(7) NOT NULL,
  103. FOREIGN KEY (_exam_id) REFERENCES Exam(_id),
  104. _student_id VARCHAR(7) NOT NULL,
  105. FOREIGN KEY (_student_id) REFERENCES Student(_id),
  106. PRIMARY KEY (_exam_id, _student_id),
  107. _result INT,
  108. _start_time DATETIME,
  109. _end_time DATETIME
  110. );
  111.  
  112. INSERT INTO QuestionType VALUES ('T01', 'True/False', 1), ('T02', 'Multiple Choice - Single Answer', 1), ('T03', 'Multiple Choice - Multiple Answer', 1);
  113. INSERT INTO Course VALUES ('CSE0001', 'Computer Basic', null, 1)
  114. ,('CSE0002', 'Elemetary Programming', null, 1)
  115. ,('CSE0003', 'Database Management', null, 1 );
  116. INSERT INTO Answer VALUES ('A000000001', 'True', 1)
  117. ,('A000000002', 'False', 0);
  118. INSERT INTO Role VALUES ('R01', 'ADMINISTRATOR', 1)
  119. , ('R02', 'INSTRUCTOR', 1)
  120. , ('R03', 'STAFF', 1);
  121. INSERT INTO User VALUES ('U000001', 'Pham Manh Hieu', 'hieupm2096@gmail.com', '123456', 1, 'R01')
  122. , ('U000002', 'Pham Huu Tri', 'triph@gmail.com', '123456', 1, 'R02')
  123. , ('U000003', 'Nguyen Tien Bao', 'baont@gmail.com', '123456', 1, 'R03');
  124. INSERT INTO Class VALUES ('C000001', null, 1, 'U000002');
  125.  
  126. INSERT INTO Student VALUES ('S000001', 'Pham Manh Hieu', 'hieupm2096@gmail.com', '123456', 'C000001', 1)
  127. , ('S000002', 'Nguyen Thi Ha', 'hant@gmail.com', '123456', 'C000001', 1);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement