· 6 years ago · Apr 13, 2019, 07:58 AM
1-- MySQL Script generated by MySQL Workbench
2-- Sat Apr 13 09:46:22 2019
3-- Model: New Model Version: 1.0
4-- MySQL Workbench Forward Engineering
5
6v_OLD_UNIQUE_CHECKS:=@@UNIQUE_CHECKS, UNIQUE_CHECKS:=0;
7v_OLD_FOREIGN_KEY_CHECKS:=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS:=0;
8v_OLD_SQL_MODE:=@@SQL_MODE, SQL_MODE:='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
9
10-- -----------------------------------------------------
11-- Schema mydb
12-- -----------------------------------------------------
13
14-- -----------------------------------------------------
15-- Schema mydb
16-- -----------------------------------------------------
17CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
18USE mydb ;
19
20-- -----------------------------------------------------
21-- Table `mydb`.`adresy`
22-- -----------------------------------------------------
23CREATE SEQUENCE `mydb`.`adresy`_seq;
24
25CREATE TABLE IF NOT EXISTS `mydb`.`adresy` (
26 idadresy INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`adresy`_seq'),
27 miasto VARCHAR(45) NOT NULL,
28 ulica VARCHAR(45) NOT NULL,
29 numer_budynku VARCHAR(45) NOT NULL,
30 numer_lokalu INT NULL,
31 kod_pocztowy VARCHAR(45) NOT NULL,
32 PRIMARY KEY (idadresy));
33ENGINE = InnoDB;
34
35
36-- -----------------------------------------------------
37-- Table `mydb`.`filie`
38-- -----------------------------------------------------
39CREATE SEQUENCE `mydb`.`filie`_seq;
40
41CREATE TABLE IF NOT EXISTS `mydb`.`filie` (
42 Idfilie INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`filie`_seq'),
43 nr_filii INT NOT NULL,
44 adresy_idadresy INT NOT NULL,
45 PRIMARY KEY (Idfilie)
46 CREATE INDEX fk_filie_adresy1_idx ON `mydb`.`filie` (adresy_idadresy ASC) VISIBLE,
47 CONSTRAINT fk_filie_adresy1
48 FOREIGN KEY (adresy_idadresy)
49 REFERENCES `mydb`.`adresy` (idadresy)
50 ON DELETE NO ACTION
51 ON UPDATE NO ACTION)
52ENGINE = InnoDB;
53
54
55-- -----------------------------------------------------
56-- Table `mydb`.`uzytkownik`
57-- -----------------------------------------------------
58CREATE SEQUENCE `mydb`.`uzytkownik`_seq;
59
60CREATE TABLE IF NOT EXISTS `mydb`.`uzytkownik` (
61 iduzytkownik INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`uzytkownik`_seq'),
62 login VARCHAR(45) NOT NULL,
63 haslo VARCHAR(45) NOT NULL,
64 email VARCHAR(45) NOT NULL,
65 czyadmin SMALLINT NOT NULL DEFAULT 0,
66 PRIMARY KEY (iduzytkownik));
67ENGINE = InnoDB;
68
69
70-- -----------------------------------------------------
71-- Table `mydb`.`osobafizyczna`
72-- -----------------------------------------------------
73CREATE SEQUENCE `mydb`.`osobafizyczna`_seq;
74
75CREATE TABLE IF NOT EXISTS `mydb`.`osobafizyczna` (
76 idosobafizyczna INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`osobafizyczna`_seq'),
77 imie VARCHAR(45) NOT NULL,
78 nazwisko VARCHAR(45) NOT NULL,
79 uzytkownik_iduzytkownik INT NOT NULL,
80 PRIMARY KEY (idosobafizyczna)
81 CREATE INDEX fk_osobafizyczna_uzytkownik1_idx ON `mydb`.`osobafizyczna` (uzytkownik_iduzytkownik ASC) VISIBLE,
82 CONSTRAINT fk_osobafizyczna_uzytkownik1
83 FOREIGN KEY (uzytkownik_iduzytkownik)
84 REFERENCES `mydb`.`uzytkownik` (iduzytkownik)
85 ON DELETE NO ACTION
86 ON UPDATE NO ACTION)
87ENGINE = InnoDB;
88
89
90-- -----------------------------------------------------
91-- Table `mydb`.`pracownicy`
92-- -----------------------------------------------------
93CREATE SEQUENCE `mydb`.`pracownicy`_seq;
94
95CREATE TABLE IF NOT EXISTS `mydb`.`pracownicy` (
96 idpracownicy INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`pracownicy`_seq'),
97 imie VARCHAR(45) NOT NULL,
98 nazwisko VARCHAR(45) NOT NULL,
99 stanowisko VARCHAR(45) NOT NULL,
100 wynagrodzenie DECIMAL(18,0) NOT NULL,
101 adresy_idadresy INT NOT NULL,
102 filie_Idfilie INT NOT NULL,
103 osobafizyczna_idosobafizyczna INT NOT NULL,
104 PRIMARY KEY (idpracownicy)
105 CREATE INDEX fk_pracownicy_adresy1_idx ON `mydb`.`pracownicy` (adresy_idadresy ASC) VISIBLE,
106 INDEX `fk_pracownicy_filie1_idx` (filie_Idfilie ASC) VISIBLE,
107 INDEX `fk_pracownicy_osobafizyczna1_idx` (osobafizyczna_idosobafizyczna ASC) VISIBLE,
108 CONSTRAINT fk_pracownicy_adresy1
109 FOREIGN KEY (adresy_idadresy)
110 REFERENCES `mydb`.`adresy` (idadresy)
111 ON DELETE NO ACTION
112 ON UPDATE NO ACTION,
113 CONSTRAINT fk_pracownicy_filie1
114 FOREIGN KEY (filie_Idfilie)
115 REFERENCES `mydb`.`filie` (Idfilie)
116 ON DELETE NO ACTION
117 ON UPDATE NO ACTION,
118 CONSTRAINT fk_pracownicy_osobafizyczna1
119 FOREIGN KEY (osobafizyczna_idosobafizyczna)
120 REFERENCES `mydb`.`osobafizyczna` (idosobafizyczna)
121 ON DELETE NO ACTION
122 ON UPDATE NO ACTION)
123ENGINE = InnoDB;
124
125
126-- -----------------------------------------------------
127-- Table `mydb`.`klienci`
128-- -----------------------------------------------------
129CREATE SEQUENCE `mydb`.`klienci`_seq;
130
131CREATE TABLE IF NOT EXISTS `mydb`.`klienci` (
132 idklienci INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`klienci`_seq'),
133 imie VARCHAR(45) NOT NULL,
134 nazwisko VARCHAR(45) NOT NULL,
135 nazwa_firmy VARCHAR(45) NULL,
136 regon VARCHAR(45) NULL,
137 nip VARCHAR(45) NULL,
138 rodzaj_klienta VARCHAR(45) NOT NULL,
139 adresy_idadresy INT NOT NULL,
140 osobafizyczna_idosobafizyczna INT NOT NULL,
141 PRIMARY KEY (idklienci)
142 CREATE INDEX fk_klienci_adresy1_idx ON `mydb`.`klienci` (adresy_idadresy ASC) VISIBLE,
143 INDEX `fk_klienci_osobafizyczna1_idx` (osobafizyczna_idosobafizyczna ASC) VISIBLE,
144 CONSTRAINT fk_klienci_adresy1
145 FOREIGN KEY (adresy_idadresy)
146 REFERENCES `mydb`.`adresy` (idadresy)
147 ON DELETE NO ACTION
148 ON UPDATE NO ACTION,
149 CONSTRAINT fk_klienci_osobafizyczna1
150 FOREIGN KEY (osobafizyczna_idosobafizyczna)
151 REFERENCES `mydb`.`osobafizyczna` (idosobafizyczna)
152 ON DELETE NO ACTION
153 ON UPDATE NO ACTION)
154ENGINE = InnoDB;
155
156
157-- -----------------------------------------------------
158-- Table `mydb`.`lokalizacja`
159-- -----------------------------------------------------
160CREATE SEQUENCE `mydb`.`lokalizacja`_seq;
161
162CREATE TABLE IF NOT EXISTS `mydb`.`lokalizacja` (
163 idlokalizacja INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`lokalizacja`_seq'),
164 kraj VARCHAR(45) NULL,
165 czy_w_filii SMALLINT NOT NULL DEFAULT 1,
166 filie_Idfilie INT NULL,
167 PRIMARY KEY (idlokalizacja)
168 CREATE INDEX fk_lokalizacja_filie1_idx ON `mydb`.`lokalizacja` (filie_Idfilie ASC) VISIBLE,
169 CONSTRAINT fk_lokalizacja_filie1
170 FOREIGN KEY (filie_Idfilie)
171 REFERENCES `mydb`.`filie` (Idfilie)
172 ON DELETE NO ACTION
173 ON UPDATE NO ACTION)
174ENGINE = InnoDB;
175
176
177-- -----------------------------------------------------
178-- Table `mydb`.`dostawcy`
179-- -----------------------------------------------------
180CREATE SEQUENCE `mydb`.`dostawcy`_seq;
181
182CREATE TABLE IF NOT EXISTS `mydb`.`dostawcy` (
183 iddostawcy INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`dostawcy`_seq'),
184 nazwa VARCHAR(45) NOT NULL,
185 adresy_idadresy INT NOT NULL,
186 PRIMARY KEY (iddostawcy)
187 CREATE INDEX fk_dostawcy_adresy1_idx ON `mydb`.`dostawcy` (adresy_idadresy ASC) VISIBLE,
188 CONSTRAINT fk_dostawcy_adresy1
189 FOREIGN KEY (adresy_idadresy)
190 REFERENCES `mydb`.`adresy` (idadresy)
191 ON DELETE NO ACTION
192 ON UPDATE NO ACTION)
193ENGINE = InnoDB;
194
195
196-- -----------------------------------------------------
197-- Table `mydb`.`administratorzy`
198-- -----------------------------------------------------
199CREATE SEQUENCE `mydb`.`administratorzy`_seq;
200
201CREATE TABLE IF NOT EXISTS `mydb`.`administratorzy` (
202 idadministratorzy INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`administratorzy`_seq'),
203 imie VARCHAR(45) NOT NULL,
204 nazwisko VARCHAR(45) NOT NULL,
205 uzytkownik_iduzytkownik INT NOT NULL,
206 PRIMARY KEY (idadministratorzy)
207 CREATE INDEX fk_administratorzy_uzytkownik1_idx ON `mydb`.`administratorzy` (uzytkownik_iduzytkownik ASC) VISIBLE,
208 CONSTRAINT fk_administratorzy_uzytkownik1
209 FOREIGN KEY (uzytkownik_iduzytkownik)
210 REFERENCES `mydb`.`uzytkownik` (iduzytkownik)
211 ON DELETE NO ACTION
212 ON UPDATE NO ACTION)
213ENGINE = InnoDB;
214
215
216-- -----------------------------------------------------
217-- Table `mydb`.`wyposazenie`
218-- -----------------------------------------------------
219CREATE SEQUENCE `mydb`.`wyposazenie`_seq;
220
221CREATE TABLE IF NOT EXISTS `mydb`.`wyposazenie` (
222 idwyposazenie INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`wyposazenie`_seq'),
223 radio VARCHAR(45) NULL,
224 immobilizer SMALLINT NOT NULL,
225 klimatyzacja VARCHAR(45) NULL,
226 elektryczne_szyby SMALLINT NULL,
227 kola VARCHAR(45) NULL,
228 PRIMARY KEY (idwyposazenie));
229ENGINE = InnoDB;
230
231
232-- -----------------------------------------------------
233-- Table `mydb`.`samochody`
234-- -----------------------------------------------------
235CREATE SEQUENCE `mydb`.`samochody`_seq;
236
237CREATE TABLE IF NOT EXISTS `mydb`.`samochody` (
238 idsamochody INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`samochody`_seq'),
239 marka VARCHAR(45) NOT NULL,
240 model VARCHAR(45) NOT NULL,
241 rocznik VARCHAR(45) NOT NULL,
242 silnik VARCHAR(45) NOT NULL,
243 kolor VARCHAR(45) NOT NULL,
244 wyposazenie_idwyposazenie INT NOT NULL,
245 lokalizacja_idlokalizacja INT NOT NULL,
246 PRIMARY KEY (idsamochody)
247 CREATE INDEX fk_samochody_wyposazenie_idx ON `mydb`.`samochody` (wyposazenie_idwyposazenie ASC) VISIBLE,
248 INDEX `fk_samochody_lokalizacja1_idx` (lokalizacja_idlokalizacja ASC) VISIBLE,
249 CONSTRAINT fk_samochody_wyposazenie
250 FOREIGN KEY (wyposazenie_idwyposazenie)
251 REFERENCES `mydb`.`wyposazenie` (idwyposazenie)
252 ON DELETE NO ACTION
253 ON UPDATE NO ACTION,
254 CONSTRAINT fk_samochody_lokalizacja1
255 FOREIGN KEY (lokalizacja_idlokalizacja)
256 REFERENCES `mydb`.`lokalizacja` (idlokalizacja)
257 ON DELETE NO ACTION
258 ON UPDATE NO ACTION)
259ENGINE = InnoDB;
260
261
262-- -----------------------------------------------------
263-- Table `mydb`.`czesci`
264-- -----------------------------------------------------
265CREATE SEQUENCE `mydb`.`czesci`_seq;
266
267CREATE TABLE IF NOT EXISTS `mydb`.`czesci` (
268 idczesci INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`czesci`_seq'),
269 nazwa_czesci VARCHAR(45) NOT NULL,
270 cena DECIMAL(18,0) NOT NULL,
271 stan_magazynowy INT NOT NULL,
272 dostawcy_iddostawcy INT NOT NULL,
273 PRIMARY KEY (idczesci)
274 CREATE INDEX fk_czesci_dostawcy1_idx ON `mydb`.`czesci` (dostawcy_iddostawcy ASC) VISIBLE,
275 CONSTRAINT fk_czesci_dostawcy1
276 FOREIGN KEY (dostawcy_iddostawcy)
277 REFERENCES `mydb`.`dostawcy` (iddostawcy)
278 ON DELETE NO ACTION
279 ON UPDATE NO ACTION)
280ENGINE = InnoDB;
281
282
283-- -----------------------------------------------------
284-- Table `mydb`.`zamowienia`
285-- -----------------------------------------------------
286CREATE SEQUENCE `mydb`.`zamowienia`_seq;
287
288CREATE TABLE IF NOT EXISTS `mydb`.`zamowienia` (
289 idzamowienia INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`zamowienia`_seq'),
290 data DATE NOT NULL,
291 samochody_idsamochody INT NOT NULL,
292 klienci_idklienci INT NOT NULL,
293 PRIMARY KEY (idzamowienia)
294 CREATE INDEX fk_zamowienia_samochody1_idx ON `mydb`.`zamowienia` (samochody_idsamochody ASC) VISIBLE,
295 INDEX `fk_zamowienia_klienci1_idx` (klienci_idklienci ASC) VISIBLE,
296 CONSTRAINT fk_zamowienia_samochody1
297 FOREIGN KEY (samochody_idsamochody)
298 REFERENCES `mydb`.`samochody` (idsamochody)
299 ON DELETE NO ACTION
300 ON UPDATE NO ACTION,
301 CONSTRAINT fk_zamowienia_klienci1
302 FOREIGN KEY (klienci_idklienci)
303 REFERENCES `mydb`.`klienci` (idklienci)
304 ON DELETE NO ACTION
305 ON UPDATE NO ACTION)
306ENGINE = InnoDB;
307
308
309-- -----------------------------------------------------
310-- Table `mydb`.`serwis`
311-- -----------------------------------------------------
312CREATE SEQUENCE `mydb`.`serwis`_seq;
313
314CREATE TABLE IF NOT EXISTS `mydb`.`serwis` (
315 idserwis INT NOT NULL DEFAULT NEXTVAL ('`mydb`.`serwis`_seq'),
316 przeglad SMALLINT NOT NULL,
317 naprawa SMALLINT NOT NULL,
318 koszt DECIMAL(18,0) NOT NULL,
319 filie_Idfilie INT NOT NULL,
320 PRIMARY KEY (idserwis)
321 CREATE INDEX fk_serwis_filie1_idx ON `mydb`.`serwis` (filie_Idfilie ASC) VISIBLE,
322 CONSTRAINT fk_serwis_filie1
323 FOREIGN KEY (filie_Idfilie)
324 REFERENCES `mydb`.`filie` (Idfilie)
325 ON DELETE NO ACTION
326 ON UPDATE NO ACTION)
327ENGINE = InnoDB;
328
329
330SQL_MODE:=@OLD_SQL_MODE;
331FOREIGN_KEY_CHECKS:=@OLD_FOREIGN_KEY_CHECKS;
332UNIQUE_CHECKS:=@OLD_UNIQUE_CHECKS;