Advertisement
Artcik

projo_2b

May 18th, 2017
633
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.20 KB | None | 0 0
  1. -- Artur Pyœk 246832
  2. -- Grupa lab. 5
  3. -- Zad proj. 1b
  4.  
  5. CREATE TABLE Adres(
  6. id SERIAL PRIMARY KEY,
  7. miejscowosc VARCHAR(25) NOT NULL CHECK(LENGTH(miejscowosc)>2),
  8. ulica VARCHAR(25) NOT NULL CHECK(LENGTH(ulica)>2),
  9. numer_budynku VARCHAR(6) NOT NULL,
  10. numer_mieszkania INTEGER,
  11. kod_pocztowy VARCHAR(10) NOT NULL CHECK(LENGTH(kod_pocztowy)>4),
  12. );
  13.  
  14. CREATE TABLE Menadzer(
  15. id SERIAL PRIMARY KEY,
  16. imie VARCHAR(25) NOT NULL CHECK(LENGTH(imie)>2),
  17. nazwisko VARCHAR(25) NOT NULL CHECK(LENGTH(nazwisko)>2),
  18. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  19. Adres_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE
  20. );
  21.  
  22.  
  23.  
  24. CREATE TABLE Artysta(
  25. id SERIAL PRIMARY KEY,
  26. imie VARCHAR(25) NOT NULL CHECK(LENGTH(imie)>2),
  27. nazwisko VARCHAR(25) NOT NULL CHECK(LENGTH(nazwisko)>2),
  28. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  29. gatunek VARCHAR(15) NOT NULL CHECK(LENGTH(gatunek)>3),
  30. Adresy_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE,
  31. Menadzer_id INTEGER REFERENCES Menadzer(id) ON UPDATE CASCADE
  32. );
  33.  
  34.  
  35. CREATE TABLE Album(
  36. id SERIAL PRIMARY KEY,
  37. nazwa VARCHAR(20) NOT NULL UNIQUE CHECK(LENGTH(nazwa)>3) ,
  38. data_wydania DATETIME NOT NULL DEFAULT NOW(),
  39. dlugosc INTEGER NOT NULL,
  40. Artysta_id INTEGER REFERENCES Artysta(id) ON UPDATE CASCADE
  41. );
  42.  
  43.  
  44. CREATE TABLE Dystrybutor(
  45. id SERIAL PRIMARY KEY,
  46. nazwa VARCHAR(20) NOT NULL UNIQUE,
  47. kraj VARCHAR(15) NOT NULL,
  48. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  49. email VARCHAR(25) NOT NULL UNIQUE,
  50. Adres_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE
  51. );
  52.  
  53.  
  54. CREATE TABLE Producent(
  55. id SERIAL PRIMARY KEY,
  56. imie VARCHAR(15) NOT NULL CHECK(LENGTH(imie)>2),
  57. nazwisko VARCHAR(20) NOT NULL CHECK(LENGTH(nazwisko)>2),
  58. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  59. email VARCHAR(25) NOT NULL UNIQUE,
  60. Adres_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE
  61. );
  62.  
  63.  
  64. CREATE TABLE Mastering(
  65. id SERIAL PRIMARY KEY,
  66. nazwa VARCHAR(20) NOT NULL UNIQUE,
  67. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  68. email VARCHAR(25) NOT NULL UNIQUE,
  69. Adres_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE
  70. );
  71.  
  72.  
  73. CREATE TABLE Studio_Nagraniowe(
  74. id SERIAL PRIMARY KEY,
  75. nazwa VARCHAR(20) NOT NULL UNIQUE,
  76. telefon INTEGER NOT NULL CHECK(LENGTH(telefon)>5),
  77. email VARCHAR(25) NOT NULL UNIQUE,
  78. Adres_id INTEGER REFERENCES Adres(id) ON UPDATE CASCADE
  79. );
  80.  
  81.  
  82. CREATE TABLE Rezerwacja_Studia(
  83. id SERIAL PRIMARY KEY,
  84. data DATETIME NOT NULL DEFAULT NOW(),
  85. Studio_Nagraniowe_id INTEGER REFERENCES Studio_Nagraniowe(id) ON UPDATE CASCADE,
  86. Artysta_id INTEGER REFERENCES Artysta(id) ON UPDATE CASCADE
  87. );
  88.  
  89.  
  90. CREATE TABLE Album_Wydany(
  91. Album_id INTEGER REFERENCES Album(id) ON UPDATE CASCADE,
  92. Dystrybutor_id INTEGER REFERENCES Dystrybutor(id) ON UPDATE CASCADE,
  93. Producent_id INTEGER REFERENCES Producent(id) ON UPDATE CASCADE,
  94. Studio_Nagraniowe_id INTEGER REFERENCES Studio_Nagraniowe(id) ON UPDATE CASCADE,
  95. Mastering_id INTEGER REFERENCES Mastering(id) ON UPDATE CASCADE,
  96.  
  97. CONSTRAINT PK_Album_Wydany PRIMARY KEY(Album_id, Dystrybutor_id, Producent_id, Studio_Nagraniowe_id,
  98. Mastering_id)
  99. );
  100.  
  101.  
  102. INSERT INTO Adres(miejscowosc,ulica,numer_budynku,numer_mieszkania,kod_pocztowy)
  103. VALUES('Berlin', 'Konstanzer Strasse', '71', 5, '35647');
  104.  
  105. INSERT INTO Adres(miejscowosc,ulica,numer_budynku,numer_mieszkania,kod_pocztowy)
  106. VALUES('Ampfing', 'Kieler Srasse', '20', 2, '84536');
  107.  
  108. INSERT INTO Adres(miejscowosc,ulica,numer_budynku,numer_mieszkania,kod_pocztowy)
  109. VALUES('Montreal', 'Rene-Levesque', '193', 6, '54856');
  110.  
  111. INSERT INTO Adres(miejscowosc,ulica,numer_budynku,numer_mieszkania,kod_pocztowy)
  112. VALUES('Warszawa', 'Aleje Jerozolimskie', '55', 2, '02-011');
  113.  
  114. INSERT INTO Adres(miejscowosc,ulica,numer_budynku,numer_mieszkania,kod_pocztowy)
  115. VALUES('Kraków', 'Dêbowa', '40', 1, '43-300');
  116.  
  117.  
  118.  
  119. INSERT INTO Menadzer(imie,nazwisko,telefon,Adres_id)
  120. VALUES('Adam', 'Deby', 791584568, 2);
  121.  
  122. INSERT INTO Menadzer(imie,nazwisko,telefon,Adres_id)
  123. VALUES('Michal', 'Wisniewski', 584754568, 1);
  124.  
  125. INSERT INTO Menadzer(imie,nazwisko,telefon,Adres_id)
  126. VALUES('Mikhail', 'Krakov', 795424568, 3);
  127.  
  128. INSERT INTO Menadzer(imie,nazwisko,telefon,Adres_id)
  129. VALUES('Nathaniel', 'Sernik', 874584568, 5);
  130.  
  131. INSERT INTO Menadzer(imie,nazwisko,telefon,Adres_id)
  132. VALUES('Michael', 'Crook', 884568, 4);
  133.  
  134.  
  135. INSERT INTO Artysta(imie,nazwisko,telefon,gatunek,Adresy_id, Menadzer_id)
  136. VALUES('Matthew', 'Bellamy', 3242412, 'rock', 2, 1);
  137.  
  138. INSERT INTO Artysta(imie,nazwisko,telefon,gatunek,Adresy_id, Menadzer_id)
  139. VALUES('Michael', 'Jackson', 24324543, 'pop', 3, 3);
  140.  
  141. INSERT INTO Artysta(imie,nazwisko,telefon,gatunek,Adresy_id, Menadzer_id)
  142. VALUES('Sarsa', 'Markiewicz', 24324521, 'pop', 1, 4);
  143.  
  144. INSERT INTO Artysta(imie,nazwisko,telefon,gatunek,Adresy_id, Menadzer_id)
  145. VALUES('Samuel', 'Jackson', 45224452, 'rock', 4, 5);
  146.  
  147. INSERT INTO Artysta(imie,nazwisko,telefon,gatunek,Adresy_id, Menadzer_id)
  148. VALUES('Michal', 'Wisniewski', 6546234, 'pop', 5, 2);
  149.  
  150.  
  151. INSERT INTO Album(nazwa,data_wydania,dlugosc,Artysta_id)
  152. VALUES('Origin of Symmetry', '2014-06-22', 45, 1);
  153.  
  154. INSERT INTO Album(nazwa,data_wydania,dlugosc,Artysta_id)
  155. VALUES('Markers', '2004-02-12', 55, 2);
  156.  
  157. INSERT INTO Album(nazwa,data_wydania,dlugosc,Artysta_id)
  158. VALUES('Amen', '2002-01-26', 34, 3);
  159.  
  160. INSERT INTO Album(nazwa,data_wydania,dlugosc,Artysta_id)
  161. VALUES('Droga', '2013-06-22', 46, 4);
  162.  
  163. INSERT INTO Album(nazwa,data_wydania,dlugosc,Artysta_id)
  164. VALUES('Drive', '2015-09-11', 64, 5);
  165.  
  166.  
  167.  
  168. INSERT INTO Dystrybutor(nazwa,kraj,telefon,email,Adres_id)
  169. VALUES('Step Records', 'Poland', 789456248, 'steprecords@gmail.com', 5);
  170.  
  171. INSERT INTO Dystrybutor(nazwa,kraj,telefon,email,Adres_id)
  172. VALUES('Warner Music', 'Germany', 32245432, 'warner.germany@warner.com', 2);
  173.  
  174. INSERT INTO Dystrybutor(nazwa,kraj,telefon,email,Adres_id)
  175. VALUES('Organek Records', 'Polska', 789456248, 'steprecords@gmail.com', 4);
  176.  
  177. INSERT INTO Dystrybutor(nazwa,kraj,telefon,email,Adres_id)
  178. VALUES('Global Records', 'Germany', 324113265, 'global.records@gmail.com', 2);
  179.  
  180. INSERT INTO Dystrybutor(nazwa,kraj,telefon,email,Adres_id)
  181. VALUES('Universal Music', 'Canada', 36523413, 'universal.music@uni.com', 3);
  182.  
  183.  
  184.  
  185. INSERT INTO Producent(imie,nazwisko,telefon,email,Adres_id)
  186. VALUES('Michal', 'Skarzynski', 784582485, 'm.skarz@gmail.com', 3);
  187.  
  188. INSERT INTO Producent(imie,nazwisko,telefon,email,Adres_id)
  189. VALUES('Shawn', 'Morrison', 2351235, 's.morrison@gmail.com', 1);
  190.  
  191. INSERT INTO Producent(imie,nazwisko,telefon,email,Adres_id)
  192. VALUES('Peter', 'Parker', 5382485, 'p.parker@gmail.com', 2);
  193.  
  194. INSERT INTO Producent(imie,nazwisko,telefon,email,Adres_id)
  195. VALUES('Piotr', 'Polak', 334582485, 'piotr.polak@gmail.com', 5);
  196.  
  197. INSERT INTO Producent(imie,nazwisko,telefon,email,Adres_id)
  198. VALUES('Sara', 'Larsson', 69854872, 'sara.larsson@gmail.com', 4);
  199.  
  200.  
  201. INSERT INTO Mastering(nazwa, telefon, email, Adres_id)
  202. VALUES('Mastering Ltd.', 48545468, 'mas.ltd@gmail.com', 1);
  203.  
  204. INSERT INTO Mastering(nazwa, telefon, email, Adres_id)
  205. VALUES('Sterling Sound', 4234212, 'sterl.sound@gmail.com', 2);
  206.  
  207. INSERT INTO Mastering(nazwa, telefon, email, Adres_id)
  208. VALUES('Bain', 5632435, 'bain@gmail.com', 3);
  209.  
  210. INSERT INTO Mastering(nazwa, telefon, email, Adres_id)
  211. VALUES('Clio Sound', 113545468, 'clio.so@gmail.com', 4);
  212.  
  213. INSERT INTO Mastering(nazwa, telefon, email, Adres_id)
  214. VALUES('Berk Sound', 66545468, 'berk.sd@gmail.com', 5);
  215.  
  216.  
  217.  
  218. INSERT INTO Studio_Nagraniowe(nazwa,telefon,email,Adres_id)
  219. VALUES('Polskie Radio', 795845648, 'polskie.ra@gmail.com', 1);
  220.  
  221. INSERT INTO Studio_Nagraniowe(nazwa,telefon,email,Adres_id)
  222. VALUES('Republica', 8654895, 'republica@gmail.com', 3);
  223.  
  224. INSERT INTO Studio_Nagraniowe(nazwa,telefon,email,Adres_id)
  225. VALUES('TR Studios', 5345235, 'trstudios@gmail.com', 2);
  226.  
  227. INSERT INTO Studio_Nagraniowe(nazwa,telefon,email,Adres_id)
  228. VALUES('Pasja Sounds', 2587458, 'pasja@gmail.com', 5);
  229.  
  230. INSERT INTO Studio_Nagraniowe(nazwa,telefon,email,Adres_id)
  231. VALUES('Nonagram', 7633452, 'nonagram@gmail.com', 4);
  232.  
  233.  
  234.  
  235. INSERT INTO Rezerwacja_Studia(data, Studio_Nagraniowe_id, Artysta_id)
  236. VALUES('2014-05-22', 2, 1);
  237.  
  238. INSERT INTO Rezerwacja_Studia(data, Studio_Nagraniowe_id, Artysta_id)
  239. VALUES('2010-02-11', 4, 2);
  240.  
  241. INSERT INTO Rezerwacja_Studia(data, Studio_Nagraniowe_id, Artysta_id)
  242. VALUES('2005-04-21', 5, 4);
  243.  
  244. INSERT INTO Rezerwacja_Studia(data, Studio_Nagraniowe_id, Artysta_id)
  245. VALUES('2015-09-28', 3, 3);
  246.  
  247. INSERT INTO Rezerwacja_Studia(data, Studio_Nagraniowe_id, Artysta_id)
  248. VALUES('2001-01-01', 5, 5);
  249.  
  250.  
  251.  
  252. INSERT INTO Album_Wydany(Album_id,Dystrybutor_id,Producent_id,Studio_Nagraniowe_id,Mastering_id)
  253. VALUES(1, 2, 4, 2, 2);
  254.  
  255. INSERT INTO Album_Wydany(Album_id,Dystrybutor_id,Producent_id,Studio_Nagraniowe_id,Mastering_id)
  256. VALUES(5, 3, 4, 2, 1);
  257.  
  258. INSERT INTO Album_Wydany(Album_id,Dystrybutor_id,Producent_id,Studio_Nagraniowe_id,Mastering_id)
  259. VALUES(1, 2, 3, 2, 5);
  260.  
  261. INSERT INTO Album_Wydany(Album_id,Dystrybutor_id,Producent_id,Studio_Nagraniowe_id,Mastering_id)
  262. VALUES(2, 2, 4, 2, 2);
  263.  
  264. INSERT INTO Album_Wydany(Album_id,Dystrybutor_id,Producent_id,Studio_Nagraniowe_id,Mastering_id)
  265. VALUES(4, 3, 4, 2, 5);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement