· 7 years ago · Oct 19, 2018, 10:10 AM
1drop database if exists kk_14092018;
2create database if not exists kk_14092018;
3use kk_14092018;
4create table pracownicy(
5id integer not null primary key,
6imie varchar(16) not null,
7nazwisko varchar(32) not null
8);
9alter table pracownicy add column login varchar(8);
10alter table pracownicy add column haslo varchar(8);
11alter table pracownicy add column pin char(4);
12
13create table wyroby(
14id integer not null primary key,
15nazwa varchar(32) not null
16);
17
18create table magazyn(
19id smallint not null primary key,
20nazwa varchar(16)
21);
22
23create table lokalizacjaWyrobow(
24id integer not null primary key,
25wyrobyID integer not null,
26magazynID smallint not null,
27ktoDodalId integer not null
28);
29
30
31
32alter table lokalizacjawyrobow add constraint
33foreign key fk_wyrobyId(wyrobyId)
34references wyroby(Id)
35on update restrict on delete restrict;
36
37alter table lokalizacjawyrobow add constraint
38foreign key fk_magazynID(magazynID)
39references magazyn(ID)
40on update restrict on delete restrict;
41
42alter table lokalizacjawyrobow add constraint
43foreign key fk_ktoDodalId(ktoDodalId)
44references pracownicy(Id)
45on update restrict on delete restrict;
46
47insert into wyroby values (1, 'podkladka');
48insert into wyroby (id, nazwa) values (2, 'nakretki');
49insert into wyroby (nazwa, ID) values ('nakretki', 3);
50
51delete from wyroby where id = 3;
52
53insert into magazyn values (1, 'magazyn A');
54
55insert into pracownicy values (1, 'jan', 'kowalski', null, null, null);
56
57insert into lokalizacjaWyrobow
58(id, wyrobyID, magazynID, ktoDodaLId) values
59(1, 1 , 1 , 1);
60
61select lw.id, lw.wyrobyID as KodWyrobu, w.nazwa as produkt,
62lw.magazynID as 'Kod Magazynu', m.nazwa as magazyn,
63lw.ktoDodalID, p.nazwisko, p.imie
64from lokalizacjaWyrobow as lw
65inner join wyroby as w on w.id = lw.wyrobyID
66inner join magazyn as m on m.id = lw.magazynID
67left outer join pracownicy as p on p.id = lw.ktoDodalID;