· 5 years ago · Jun 02, 2020, 03:44 PM
1CREATE DATABASE IF NOT EXISTS HurtowniaBaza2;
2
3USE HurtowniaBaza2;
4
5CREATE USER IF NOT EXISTS hurtownia@localhost IDENTIFIED BY 'password';
6
7GRANT ALL PRIVILEGES ON hotel.* TO hurtownia@localhost;
8
9FLUSH privileges; -- nie wiem czy to tu jest konieczne, jak beda problemy to tworzenie użytkownika do wyjebania(ta u 2 linijki wyżej)
10
11CREATE TABLE Kategoria (
12 id INT NOT NULL AUTO_INCREMENT,
13 nazwa VARCHAR(100) NOT NULL,
14 PRIMARY KEY(id)
15);
16
17CREATE TABLE Dostawca(
18 id INT NOT NULL AUTO_INCREMENT,
19 nazwa VARCHAR(200) NOT NULL,
20 adres VARCHAR(200),
21 nr_telefonu INT NOT NULL,
22 PRIMARY KEY(id)
23);
24
25CREATE TABLE Produkt (
26 id INT NOT NULL AUTO_INCREMENT,
27 id_kategorii INT NOT NULL,
28 ilosc INT DEFAULT 0,
29 cena DECIMAL DEFAULT 0,
30 id_dostawcy INT NOT NULL,
31 nazwa VARCHAR(200) NOT NULL,
32 PRIMARY KEY(id),
33 FOREIGN KEY(id_kategorii) REFERENCES Kategoria(id),
34 FOREIGN KEY(id_dostawcy) REFERENCES Dostawca(id)
35);
36
37CREATE TABLE Lokalizacja (
38 id INT NOT NULL AUTO_INCREMENT,
39 id_kategorii INT NOT NULL,
40 nazwa VARCHAR(30),
41 PRIMARY KEY(id),
42 FOREIGN KEY(id_kategorii) REFERENCES Kategoria(id)
43);
44
45CREATE TABLE Klient(
46 id INT NOT NULL AUTO_INCREMENT,
47 nazwa VARCHAR(70) NOT NULL,
48 nr_telefonu INT NOT NULL,
49 imie VARCHAR(50),
50 nazwisko VARCHAR(50),
51 PRIMARY KEY(id)
52);
53
54CREATE TABLE Pozycja(
55 id INT NOT NULL AUTO_INCREMENT,
56 pozycja VARCHAR(50),
57 PRIMARY KEY(id)
58);
59
60CREATE TABLE Pracownik(
61 id INT NOT NULL AUTO_INCREMENT,
62 id_pozycji INT NOT NULL,
63 pensja DECIMAL NOT NULL,
64 imie VARCHAR(50),
65 nazwisko VARCHAR(50),
66 PRIMARY KEY(id),
67 FOREIGN KEY(id_pozycji) REFERENCES Pozycja(id)
68);
69
70CREATE TABLE Zamowienie(
71 id INT NOT NULL AUTO_INCREMENT,
72 id_produktu INT NOT NULL,
73 id_klienta INT NOT NULL,
74 id_pracownika INT NOT NULL,
75 ilosc INT NOT NULL DEFAULT 0,
76 cena DECIMAL DEFAULT 0,
77 data DATETIME,
78 status VARCHAR(50) NOT NULL DEFAULT "in progress",
79 FOREIGN KEY(id_produktu) REFERENCES Produkt(id),
80 FOREIGN KEY(id_klienta) REFERENCES Klient(id),
81 FOREIGN KEY(id_pracownika) REFERENCES Pracownik(id),
82 PRIMARY KEY(id)
83);
84
85INSERT INTO `Dostawca` (`id`, `nazwa`, `adres`, `nr_telefonu`) VALUES
86(1, 'Wyborowa.SA', 'Komandoria 5, 61-131 Poznań', 618770081),
87(2, 'Tyskie Browary Książęce', 'Mikołowska 5, 43-100 Tychy', 323278203),
88(3, 'Wielkopolska Wytwórnia Wódek Polanin', 'Karola Libelta 6, 63-000 Środa Wielkopolska', 612853441),
89(4, 'Żywiec. Sprzedaż i dystrybucja', '27, Podkolejowa 25, 42-202 Częstochowa', 800610000),
90(5, 'Tłocznia Naturalnych Soków i Cydru', 'Kolonia Świdnik Mały 28A, 20-258 Lublin', 663728003),
91(6, 'Winnica ZAGRABIE', 'Miodowa 4, 32-061 Rybna', 691404747);
92
93
94
95INSERT INTO `Kategoria` (`id`, `nazwa`) VALUES
96(1, 'Wódki'),
97(2, 'Piwa'),
98(3, 'Cydr'),
99(4, 'Wino');
100
101
102
103INSERT INTO `Klient` (`id`, `nazwa`, `nr_telefonu`, `imie`, `nazwisko`) VALUES
104(1, 'Lewiatan', 544127821, 'Ob', 'kl'),
105(2, 'Sklep Alkoholowy Kraków', 444333121, 'Janusz', 'Januszewski'),
106(3, 'Dom Weselny \"Jaworzynka\"', 123321222, 'Dariusz', 'Awent'),
107(4, 'Bar \"Pod zgryźliwym Jankiem\"', 12333323, 'Mariusz', 'Witkac'),
108(5, 'Dom Weselny \"Arkadia\"', 666363122, 'Roman', 'Polak');
109
110
111INSERT INTO `Lokalizacja` (`id`, `id_kategorii`, `nazwa`) VALUES
112(1, 3, 'Blok:A'),
113(2, 2, 'Blok:B'),
114(3, 1, 'Blok:C'),
115(4, 4, 'Blok:A');
116
117
118
119INSERT INTO `Pozycja` (`id`, `pozycja`) VALUES
120(1, 'Właściciel'),
121(2, 'Obsługa klienta'),
122(3, 'Pracownik magazynu'),
123(4, 'Dyrektor do spraw logistyki'),
124(5, 'Kierownik magazynu ');
125
126
127
128INSERT INTO `Pracownik` (`id`, `id_pozycji`, `pensja`, `imie`, `nazwisko`) VALUES
129(1, 1, '8000', 'Marian', 'Zawiercki'),
130(2, 2, '3400', 'Karolina', 'Czarnecka'),
131(3, 4, '5200', 'Radosław', 'Racławicki'),
132(4, 5, '4200', 'Czesław', 'Adamiuk'),
133(5, 3, '2600', 'Adam', 'Adamowicz'),
134(6, 3, '2400', 'Adrian', 'Leszek'),
135(7, 3, '2450', 'Anna', 'Wacławik'),
136(8, 3, '2500', 'Bartłomiej', 'Opolski'),
137(9, 3, '2300', 'Jarosław', 'Jaroszewski'),
138(10, 3, '2700', 'Mariusz', 'Pudz'),
139(11, 3, '2400', 'Piotr', 'Mikołowski'),
140(12, 3, '2450', 'Karol', 'Karolak'),
141(13, 2, '3600', 'Damian', 'Rzepka');
142
143
144INSERT INTO `Produkt` (`id`, `id_kategorii`, `ilosc`, `cena`, `id_dostawcy`, `nazwa`) VALUES
145(1, 2, 500, '12', 4, 'PIWO ŻYWIEC 0.5L 4-PACK PUSZKA'),
146(2, 2, 500, '3', 4, 'PIWO ŻYWIEC 0.5, PUSZKA'),
147(3, 3, 429, '11', 5, 'Cydr Lubelski 1L'),
148(4, 3, 240, '10', 5, 'Dobroński Jabłkowy 0,75L '),
149(5, 4, 20, '251', 6, 'WINO PORTO KOPKE TAWNY 20YO 0,75L 20% DREWNIANA SKRZYNKA'),
150(6, 4, 50, '290', 6, 'WINO BAROLO RISERVA MILENIUM DOCG 0,75L CZ/W WŁOCHY'),
151(7, 4, 500, '17', 6, 'WINO CASA ITALIA BIANCO B/PS 0,75L'),
152(8, 4, 12, '19', 6, 'WINO BARDOLINO CHIARETTO R/W 0.75L'),
153(9, 4, 0, '20', 6, 'WINO VILLA BRUCCIO PRIMITIVO CZ/W 0.75L'),
154(10, 4, 12, '22', 6, 'WINO AFRICAN HORIZON CABERN.SAUV.-SHIRAZ0.75L CZ/PW RPA'),
155(11, 4, 420, '23', 6, 'WINO PRINCESSE MARIE VDF CZ/PS 0.75L'),
156(12, 4, 33, '25', 6, 'WINO PRIMITIVO DI PUGLIA 0,75L CZ/PS ITALIA'),
157(53, 2, 320, '2', 2, 'PIWO HARNAŚ 0.5L BUTELKA ZWROTNA'),
158(54, 2, 333, '4', 2, 'PIWO HEINEKEN 0.5L BUTELKA BEZZWROTNA'),
159(55, 2, 122, '3', 2, 'PIWO ZATECKY SVETLY LEZAK 0.5L BUTELKA'),
160(56, 2, 200, '6', 2, 'PIWO PILSNER URQUELL 0.5L BUTELKA BEZZWROTNA'),
161(57, 2, 540, '3', 2, 'PIWO HARNAŚ 0.5L PUSZKA'),
162(58, 2, 231, '6', 2, 'PIWO HEINEKEN 0,65L BUTELKA BEZZWROTNA'),
163(59, 2, 111, '3', 4, 'PIWO KASZTELAN NIEPASTERYZOWANE 05L BUTELKA ZWROTNA'),
164(60, 2, 531, '3', 4, 'PIWO KASZTELAN 0,5L PUSZKA'),
165(61, 2, 259, '2', 4, 'PIWO KSIĄŻ JASNE PEŁNE 0.5L BUTELKA ZWROTNA '),
166(62, 2, 469, '5', 4, 'PIWO KSIĄŻĘCE IPA 0.5L BUTELKA ZWROTNA '),
167(63, 2, 421, '4', 4, 'PIWO KSIĄŻĘCE ZŁOTE PSZENICZNE 0.5L BUTELKA ZWROTNA'),
168(64, 2, 343, '5', 4, 'PIWO KSIĄŻĘCE PORTER 0.5L BUTELKA ZWROTNA'),
169(65, 2, 544, '5', 4, 'PIWO KSIĄŻĘCE WEIZEN 0.5L BUTELKA ZWROTNA'),
170(66, 2, 611, '3', 4, 'PIWO ŻYWIEC 0.5L BUTELKA ZWROTNA'),
171(67, 2, 51, '5', 4, 'PIWO ŻYWIEC BIAŁE 0.5L BUTELKA ZWROTNA'),
172(68, 2, 0, '3', 4, 'PIWO ŻYWIEC BEZALKOHOLOWE 0.5L BUTELKA ZWROTNA'),
173(69, 2, 2, '5', 4, 'PIWO ŻYWIEC APA 0.5L BUTELKA ZWROTNA'),
174(70, 2, 90, '5', 4, 'PIWO ŻYWIEC PORTER 0.5L BUTELKA ZWROTNA'),
175(73, 1, 90, '40', 3, 'CZARNY BOCIAN 0.5L'),
176(74, 1, 150, '60', 3, 'AMUNDSEN VODKA 0.7L'),
177(75, 1, 250, '40', 1, 'ABSOLUT VODKA 0.5L'),
178(76, 1, 500, '29', 1, 'WYBOROWA WÓDKA 0.5L'),
179(77, 1, 340, '42', 1, 'WYBOROWA WÓDKA 0.7L'),
180(78, 1, 400, '26', 3, 'ŻOŁĄDKOWA DE LUXE 0.5L'),
181(79, 1, 220, '36', 3, 'ŻOŁĄDKOWA DE LUXE 0.7L'),
182(80, 1, 120, '55', 3, 'ŻOŁĄDKOWA DE LUXE 1L'),
183(81, 1, 90, '40', 1, 'CZARNY BOCIAN 0.5L'),
184(82, 1, 150, '60', 1, 'AMUNDSEN VODKA 0.7L'),
185(83, 1, 250, '40', 1, 'ABSOLUT VODKA 0.5L'),
186(84, 1, 500, '29', 1, 'WYBOROWA WÓDKA 0.5L'),
187(85, 1, 340, '42', 1, 'WYBOROWA WÓDKA 0.7L'),
188(86, 1, 400, '26', 3, 'ŻOŁĄDKOWA DE LUXE 0.5L'),
189(87, 1, 220, '36', 3, 'ŻOŁĄDKOWA DE LUXE 0.7L');
190
191INSERT INTO `Zamowienie` (`id`, `id_produktu`, `id_klienta`, `id_pracownika`, `ilosc`, `cena`, `data`, `status`) VALUES
192(1, 3, 1, 2, 20, '150','12-02-20', 'w trakcie'),
193(2, 2, 4, 2, 20, '150', '22-03-20', 'w trakcie'),
194(3, 5, 2, 2, 20, '150', '19-04-20', 'dostarczone');
195
196-- Wybór wszystkich produktów
197-- select * from Produkt;
198
199-- Lista wszystkich pracowników
200-- select * from Pracownik;
201
202-- Wybór wszystkich klientów
203-- select nazwa, concat(imie, ' ', nazwisko) as "dane osobowe", nr_telefonu from Klient;
204
205-- Dane o produktach na podstawie numeru id Kateogii, który użytkownik wprowadzi w aplikacji, w tym przypadku id=1
206select Produkt.nazwa as "Nazwa Produktu", Produkt.ilosc as "Ilosc produktow", Produkt.cena as "Cena produktu", Kategoria.nazwa as "Nazwa Kategorii"
207from Produkt inner join Kategoria
208on Produkt.id_kategorii=Kategoria.id
209where Kategoria.id=1;