DatStorm

Untitled

Sep 15th, 2017
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 9.77 KB | None | 0 0
  1. /*
  2. Vi har valt at lave ISBN til en char på 10, da et ISBN-nummer SKAL være 10 karakterer langt.
  3. Vi har valgt at lade Name være en varchar på 20, da længden på et navn kan variere.
  4. Derudover er ISBN og Name lavet til primary keys, da key-attributes fra et entity-set, som er involveret i et relationshop også bliver key-attributtes i dette relationship.
  5. Vi har ydermere indsat værdier for kontaktpersonerne, som er knyttet til de forskellige bøger.
  6. */
  7. DROP TABLE IF EXISTS cpBook;
  8. CREATE TABLE `cpBook`(
  9.     `ISBN` char(10),
  10.     `Name` varchar(20),
  11.      PRIMARY KEY (`ISBN`,`Name`)
  12. );
  13. INSERT INTO cpBook VALUES ('0990637204', 'Andy Van');  
  14. INSERT INTO cpBook VALUES ('0990639204', 'Anders Stormer');
  15. INSERT INTO cpBook VALUES ('0990638204', 'Jesper Skipper');
  16. INSERT INTO cpBook VALUES ('0990638200', 'Jesper Skipper');
  17.  
  18. /*
  19. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  20. Vi har lavet nogle inserts, som knytter hver kontaktperson til et forlag.
  21.  */
  22.  
  23. DROP TABLE IF EXISTS `works-at`;
  24. CREATE TABLE `works-at`(
  25.     `pName` varchar(20),
  26.     `Name` varchar(20),
  27.      PRIMARY KEY(`pName`,`Name`)
  28. );
  29. INSERT INTO `works-at` VALUES ('Discovery', 'Andy Van');  
  30. INSERT INTO `works-at` VALUES ('The Label', 'Jesper Skipper');
  31. INSERT INTO `works-at` VALUES ('Gyldendahl', 'Anders Stormer');
  32.  
  33. /*
  34. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  35. Vi har indsat de forskellige kontaktpersoner, som bliver brugt foroven.
  36.  */
  37.  
  38. DROP TABLE IF EXISTS ContactPerson;
  39. CREATE TABLE `ContactPerson`(
  40.     `Name` varchar(20) PRIMARY KEY
  41. );
  42. INSERT INTO ContactPerson VALUES ('Jesper Skipper');  
  43. INSERT INTO ContactPerson VALUES ('Anders Stormer');  
  44. INSERT INTO ContactPerson VALUES ('Andy Van');
  45.  
  46. /*
  47. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  48. Vi har lavet nogle inserts, som knytter hver bog til et forlag
  49.  */
  50.  
  51. DROP TABLE IF EXISTS `published-by`;
  52. CREATE TABLE `published-by`(
  53.     `ISBN` char(10),
  54.     `pName` varchar(20),
  55.     PRIMARY KEY (`ISBN`,`pName`)
  56. );
  57. INSERT INTO `published-by` VALUES ('0990637204', 'Gyldendahl');
  58. INSERT INTO `published-by` VALUES ('0990639204', 'Discovery');
  59. INSERT INTO `published-by` VALUES ('0990638204', 'The Label');
  60. INSERT INTO `published-by` VALUES ('0990638200', 'Gyldendahl');
  61.  
  62.  /*
  63. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  64. Vi har lavet nogle inserts, som opretter de forlag, som vi brugte foroven
  65.  */
  66.  
  67. DROP TABLE IF EXISTS Publisher;
  68. CREATE TABLE `Publisher`(
  69.     `pName` varchar(20) PRIMARY KEY
  70. );
  71. INSERT INTO Publisher VALUES ('Gyldendahl');  
  72. INSERT INTO Publisher VALUES ('Discovery');
  73. INSERT INTO Publisher VALUES ('The Label');
  74.  
  75. /*
  76. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  77. Vi har lavet nogle inserts, som knytter hver bog til dens respektive forfatter. Her er der også knyttet 2 forfattere til én bog.
  78.  */
  79.  
  80. DROP TABLE IF EXISTS writtenBy;
  81. CREATE TABLE `writtenBy`(
  82.     `ISBN` char(10),
  83.     `aName` varchar(20),
  84.     PRIMARY KEY (`ISBN`,`aName`)
  85. );
  86. INSERT INTO writtenBy VALUES ('0990637204', 'Søren Lerby');  
  87. INSERT INTO writtenBy VALUES ('0990639204', 'George R.R. Martin');
  88. INSERT INTO writtenBy VALUES ('0990638204', 'Henrik Baerbak');
  89. INSERT INTO writtenBy VALUES ('0990638200', 'Søren Lerby');  
  90. INSERT INTO writtenBy VALUES ('0990639204', 'H.C. Andersen');
  91.  
  92. /*
  93. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  94. Vi har lavet nogle inserts, som opretter de forfattere vi bruger foroven
  95.  */
  96.  
  97. DROP TABLE IF EXISTS Authors;
  98. CREATE TABLE `Authors`(
  99.     `aName` varchar(20) PRIMARY KEY
  100. );
  101. INSERT INTO Authors VALUES ('Søren Lerby');  
  102. INSERT INTO Authors VALUES ('George R.R. Martin');
  103. INSERT INTO Authors VALUES ('Henrik Baerbak');
  104. INSERT INTO Authors VALUES ('H.C. Andersen');
  105.  
  106. /*
  107. Vi har valgt en varChar til vores shopLocation, da vi vil indsætte et adressenavn og webadresse for vores webshop. Vi har derudover valgt at vores pris selvfølgelig skal være en int.
  108. Vi har lavet nogle inserts, som knytter hver pris til en bog og en adresse. Her er det værd at bemærke, at der er forskellige priser for forskellige lokationer på de forskellige bøger.
  109.  */
  110.  
  111. DROP TABLE IF EXISTS `contains`;
  112. CREATE TABLE `contains`(
  113.     `shopLocation` varchar(20),
  114.     `ISBN` char(10),
  115.     `priceForBook` int,
  116.     PRIMARY KEY (`ISBN`,`shopLocation`)
  117. );
  118.  
  119. INSERT INTO `contains` VALUES ('Fiskemosevej','0990637204', 30);
  120. INSERT INTO `contains` VALUES ('Katrinebjergvej','0990637204', 150);
  121. INSERT INTO `contains` VALUES ('Vestre Ringgade','0990637204', 50);
  122. INSERT INTO `contains` VALUES ('www.fishshop.dk','0990637204', 50);      
  123. INSERT INTO `contains` VALUES ('Fiskemosevej','0990639204', 50);
  124. INSERT INTO `contains` VALUES ('Katrinebjergvej','0990639204', 180);
  125. INSERT INTO `contains` VALUES ('Vestre Ringgade','0990639204', 80);
  126. INSERT INTO `contains` VALUES ('www.fishshop.dk','0990639204', 50);  
  127. INSERT INTO `contains` VALUES ('Fiskemosevej','0990638204',5);
  128. INSERT INTO `contains` VALUES ('Katrinebjergvej','0990638204',95);
  129. INSERT INTO `contains` VALUES ('Vestre Ringgade','0990638204',20);
  130. INSERT INTO `contains` VALUES ('www.fishshop.dk','0990638204', 15);  
  131. INSERT INTO `contains` VALUES ('Fiskemosevej','0990638200',220);
  132. INSERT INTO `contains` VALUES ('Katrinebjergvej','0990638200',1500);
  133. INSERT INTO `contains` VALUES ('Vestre Ringgade','0990638200',450);
  134. INSERT INTO `contains` VALUES ('www.fishshop.dk','0990638200', 300);  
  135.  
  136. /*
  137. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  138. Vi har lavet nogle inserts, som opretter de adresser, som vi bruger foroven.
  139.  */
  140.  
  141. DROP TABLE IF EXISTS Shop;
  142. CREATE TABLE `Shop`(
  143.     `shopLocation` varchar(20) PRIMARY KEY
  144. );
  145. INSERT INTO Shop VALUES ('Fiskemosevej');
  146. INSERT INTO Shop VALUES ('Katrinebjergvej');
  147. INSERT INTO Shop VALUES ('Vestre Ringgade');
  148. INSERT INTO Shop VALUES ('www.fishshop.dk');
  149.  
  150. /*
  151. Vi har valgt datatyperne og key-attributes på samme baggrund som før.
  152. Vi har lavet nogle inserts, som giver vores relation mellem Purchase og Shop key-attributten fra Shop, nemlig shopLocation.
  153.  */
  154.  
  155. DROP TABLE IF EXISTS `made-in`;
  156. CREATE TABLE `made-in`(
  157.     `shopLocation` varchar(20) PRIMARY KEY
  158. );
  159. INSERT INTO `made-in` VALUES ('Katrinebjergvej');
  160. INSERT INTO `made-in` VALUES ('Vestre Ringgade');
  161. INSERT INTO `made-in` VALUES ('Fiskemosevej');
  162. INSERT INTO `made-in` VALUES ('www.fishshop.dk');
  163.  
  164. /*
  165. Vi har valgt at purchaseID til at være en varchar på 20, så vores første køb kan være nr. 1, og efterhånden som der kommer flere køb, vokser purchaseID'et.
  166. Vi har lavet nogle inserts, som knytter hvert purchaseID til den bog der bliver købt. Her er det værd at bemærke, at samme purchaseID betyder, at der er blevet købt
  167. en anden bog i samme køb. Samme kunde har altså været inde og købe flere bøger.
  168.  */
  169.  
  170. DROP TABLE IF EXISTS `of`;
  171. CREATE TABLE `of`(
  172.     `PurchaseID` varchar(20),
  173.     `ISBN` char(10),
  174.     PRIMARY KEY(PurchaseID, ISBN)
  175. );
  176. INSERT INTO `of` VALUES (1, '0990637204');
  177. INSERT INTO `of` VALUES (1, '0990639204');
  178. INSERT INTO `of` VALUES (2,'0990639204');
  179. INSERT INTO `of` VALUES (2,'0990638200');
  180. INSERT INTO `of` VALUES (3, '0990639204');
  181. INSERT INTO `of` VALUES (4, '0990638200');
  182.  
  183. /*
  184. Vi har valgt, at totalPrice og numberOfBooks skal være int, da det begger er tal vi har med at gøre. Derudover har vi en customerDeliveryAdress på varChar 20 da det er en adresse,
  185. mens vi har sat den til en Default på 'Bought in store', da der kun skal være deliveryAdress, hvis den er købt på webshoppen.
  186. Vi har lavet nogle inserts, som knytter purchaseID, shopLocation, ISBN-nummer, antallet af bøger, totale pris, samt deliveryAdress, så vi kan se hvilke bøger, der er købt, til hvilken
  187. pris og i hvilken butik.
  188.  */
  189.  
  190. DROP TABLE IF EXISTS Purchase;
  191. CREATE TABLE `Purchase`(
  192.     `PurchaseID` varchar(20),
  193.     `shopLocation` varchar(20),
  194.     `ISBN` char(10),
  195.     `numberOfBooks` int,
  196.     `totalPrice` int,
  197.     `custormerDeliveryAddress` varchar(20) DEFAULT 'Bought in store',
  198.     PRIMARY KEY(PurchaseID, shopLocation, ISBN)
  199. );
  200.  
  201. INSERT INTO Purchase VALUES (1, 'Katrinebjergvej', '0990637204', 3, 450, 'Bought in store');
  202. INSERT INTO Purchase VALUES (1, 'Katrinebjergvej', '0990639204', 1 ,180, 'Bought in store');
  203. INSERT INTO Purchase VALUES (2, 'Fiskemosevej', '0990639204', 5 ,250, 'Bought in store');
  204. INSERT INTO Purchase VALUES (2, 'Fiskemosevej' ,'0990638200',2,440, 'Bought in store');
  205. INSERT INTO Purchase VALUES (3, 'www.fishshop.com', '0990639204', 10,500, 'RydeVænget 20');
  206. INSERT INTO Purchase VALUES (4, 'Vestre Ringgade','0990638200',4,1800, 'Bought in store');
  207.  
  208. /*
  209. Vi har valgt datatyperne og key-attributes på vores WebShop, på baggrund af, at vi ved, at det er en subklasse til Shop.
  210. Vi har lavet nogle inserts, som opretter webadressen på vores WebShop.
  211.  */
  212.  
  213. DROP TABLE IF EXISTS WebShop;
  214. CREATE TABLE `WebShop`(
  215.     `shopLocation` varchar(20) PRIMARY KEY
  216. );
  217. INSERT INTO WebShop VALUES ('www.fishshop.dk');
  218.  
  219. /*
  220. Vi har valgt YearPublished til at være en int, da det er et årstal, EditionNumber til at være en int, da det også er et nummer og Language til at være en varchar på 20. Her er ISBN-nummeret en Key.
  221. Vi har lavet nogle inserts, som opretter bøgerne efter ISBN-nummer, sprog, titel, udgivelsesår og udgavenummer.
  222.  */
  223. DROP TABLE IF EXISTS Book;
  224. CREATE TABLE `Book`(
  225.     `ISBN` char(10) PRIMARY KEY,
  226.     `Language` varchar(20),
  227.     `bName` varchar(20),
  228.     `YearPublished` int,
  229.     `EditionNumber` int
  230. );
  231. INSERT INTO Book VALUES ('0990637204', 'Dansk', 'lær at tegne', 1992,2);
  232. INSERT INTO Book VALUES ('0990639204', 'Engelsk', 'Song of Fire', 2007,1);  
  233. INSERT INTO Book VALUES ('0990638204', 'Engelsk', 'Softwareconstruction', 2013,1);  
  234. INSERT INTO Book VALUES ('0990638200', 'Ukrainsk', 'Learn English', 2013,5);
Advertisement
Add Comment
Please, Sign In to add comment