Advertisement
Guest User

Untitled

a guest
Nov 6th, 2017
402
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.36 KB | None | 0 0
  1. CREATE TABLE Course (
  2. semesterID int NOT NULL,
  3. semester varchar(255) NOT NULL,
  4.  
  5. PRIMARY KEY (semesterID)
  6. );
  7.  
  8. CREATE TABLE User (
  9. userID int NOT NULL,
  10. firstName varchar(255) NOT NULL,
  11. lastName varchar(255) NOT NULL,
  12. username varchar(255) NOT NULL,
  13. password varchar(255) NOT NULL,
  14. email varchar(255) NOT NULL,
  15. semesterID int NOT NULL,
  16.  
  17. PRIMARY KEY (userID),
  18. FOREIGN KEY (semesterID) REFERENCES Course (semesterID)
  19. );
  20.  
  21. CREATE TABLE Admin (
  22. adminID int NOT NULL,
  23. userID int NOT NULL,
  24.  
  25. PRIMARY KEY (adminID),
  26. FOREIGN KEY (userID) REFERENCES User(userID)
  27. );
  28.  
  29. CREATE TABLE Teacher (
  30. employeeID int NOT NULL,
  31. userID int NOT NULL,
  32.  
  33. PRIMARY KEY (employeeID),
  34. FOREIGN KEY (userID) REFERENCES User(userID)
  35. );
  36.  
  37.  
  38. CREATE TABLE Student (
  39. studentID int NOT NULL,
  40. userID int NOT NULL,
  41.  
  42. PRIMARY KEY (studentID),
  43. FOREIGN KEY (userID) REFERENCES User(userID)
  44. );
  45.  
  46. CREATE TABLE Module (
  47. moduleNr int NOT NULL,
  48. taskText varchar(255) NOT NULL,
  49. deadline date NOT NULL,
  50. moduleRequirements varchar (255) NOT NULL,
  51.  
  52. PRIMARY KEY (moduleNr)
  53. );
  54.  
  55. CREATE TABLE Deliver (
  56. taskID int NOT NULL,
  57. moduleNr int NOT NULL,
  58. studentID int NOT NULL,
  59.  
  60. PRIMARY KEY (taskID),
  61. FOREIGN KEY (moduleNr) REFERENCES Module (moduleNr),
  62. FOREIGN KEY (studentID) REFERENCES Student (studentID)
  63. );
  64.  
  65. CREATE TABLE review (
  66. reviewID int NOT NULL,
  67. feedback varchar(255) NOT NULL,
  68. grade text NOT NULL,
  69. score int NOT NULL,
  70. employeeID int NOT NULL,
  71. studentID int NOT NULL,
  72. taskID int NOT NULL,
  73.  
  74. PRIMARY KEY (reviewID),
  75. FOREIGN KEY (employeeID) REFERENCES Teacher (employeeID),
  76. FOREIGN KEY (studentID) REFERENCES Student (studentID),
  77. FOREIGN KEY (taskID) REFERENCES Deliver (taskID)
  78. );
  79.  
  80. CREATE TABLE notification (
  81. notificationID int NOT NULL,
  82. info varchar(255) NOT NULL,
  83. moduleNr int NOT NULL,
  84. taskID int NULL,
  85. userID int NOT NULL,
  86.  
  87. PRIMARY KEY (notificationID),
  88. FOREIGN KEY (moduleNr) REFERENCES Module (moduleNr),
  89. FOREIGN KEY (taskID) REFERENCES Deliver (taskID),
  90. FOREIGN KEY (userID) REFERENCES User (userID)
  91. );
  92. 4. Add some test data to the database, so that you can later write SQL queries.
  93.  
  94. INSERT INTO course VALUES (110,2)
  95.  
  96. INSERT INTO User VALUES
  97. (1,"Ola", "Hansen", "Ola15", "123", "Ola15@gmail.com", 110),
  98. (2,"Martin", "Hansen", "Mar15", "123", "Martin15@gmail.com", 110),
  99. (3,"Kjell", "Hansen", "Kje15", "123", "Kjell15@gmail.com", 110),
  100. (4,"Mathias", "Hansen", "Mat15", "123", "Mathias15@gmail.com", 110),
  101. (5,"Silje", "Hansen", "Sil15", "123", "Silje15@gmail.com", 110),
  102. (6,"Sofie", "Hansen", "Sof15", "123", "Sofie15@gmail.com", 110),
  103. (7,"Maria", "Hansen", "Mar15", "123", "Maria5@gmail.com", 110),
  104. (8,"Babe", "Hansen", "Bae15", "123", "Babe15@gmail.com", 110);
  105.  
  106. INSERT INTO admin VALUES
  107. (1,1)
  108.  
  109. INSERT INTO student VALUES
  110. (1,2),
  111. (2,3),
  112. (3,4),
  113. (4,5),
  114. (5,6),
  115. (6,7)
  116.  
  117. INSERT INTO Teacher VALUES
  118. (1,7),
  119. (2,8)
  120.  
  121. INSERT INTO Module VALUES
  122. (1,"I denne modulen skal du opprette en sykkelbutikk", '2017-10-24', "Du skal kunne om arv"),
  123. (2, "I denne modulen skal du bygge videre pƄ butikken", '2017-11-15', " Du skal kunne om kobling i kode")
  124.  
  125. INSERT INTO Deliver VALUES
  126. (1,1,2),
  127. (2,1,3),
  128. (3,2,3),
  129. (4,2,4)
  130.  
  131.  
  132. INSERT INTO review VALUES
  133. (1,"Godt jobbet med modulen", "A",100,1,1,1),
  134. (2,"Rom for forbedring", "C", 60, 1,2,2),
  135. (3,"Ikke godkjent", "F", 10, 2,3,3)
  136.  
  137. INSERT INTO Notification VALUES
  138. (1,"varsel",1,1,2),
  139. (2,"modul varsel",2,null,3)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement