· 10 years ago · Sep 16, 2016, 12:42 PM
1drop database if exists kurier; /*usuwa baze jesli isnieje*/
2Create database kurier; /*tworzy nowa baze*/
3use kurier; /*ustawia baze jako domyslna*/
4
5create table adresat(
6id_adresata int NOT NULL AUTO_INCREMENT,
7imie_a varchar(20) NOT NULL,
8nazwisko_a varchar(30) NOT NULL,
9adress_a varchar(45) NOT NULL,
10miejscowosc_a varchar(30) NOT NULL,
11email_a varchar(50) NOT NULL,
12telefon_a varchar(15) NOT NULL,
13primary key (id_adresata)
14);
15
16create table pojazd(
17nr_rej varchar(9) NOT NULL,
18marka varchar(15) NOT NULL,
19model varchar(15) NOT NULL,
20przebieg int NOT NULL,
21ladownosc decimal(2, 1) NOT NULL,
22primary key(nr_rej)
23);
24
25create table przesylka(
26id_przesylki int auto_increment NOT NULL,
27waga_przesylki decimal (9,1) NOT NULL,
28status_przesylki enum('nadana', 'w sortowni', 'w drodze do adresata', 'dostarczona', 'nie dostarczono - AN') NOT NULL,
29primary key (id_przesylki),
30id_adresata int NOT NULL,
31 constraint przesylka_adresat_fk
32 foreign key (id_adresata)
33 references adresat(id_adresata)
34);
35
36create table pracownik( /*tworzy tabele*/
37pesel varchar(11) NOT NULL, /* pri key nie moze byc NULL*/
38imie varchar(20) NOT NULL, /* not null bo obowiazkowe */
39nazwisko varchar(30) NOT NULL,
40adress varchar(45) NOT NULL,
41miejscowosc varchar(30) NOT NULL,
42email varchar(50) NOT NULL,
43telefon varchar(15) NOT NULL,
44data_zatrudnienia date not null,
45godziny_od time,
46godziny_do time,
47primary key (pesel), /*ustawia pesel jako PK */
48nr_rej varchar(9) NOT NULL, /*klucz obcy z pojazdu*/
49 constraint pracownik_nr_rej_fk /*nazwa relacji*/
50 foreign key (nr_rej) /* okresle klucza obcego*/
51 references pojazd(nr_rej), /* zachodzi relecja mniedzy rekordem nr_rej tabeli pojazd*/
52id_przesylki int NOT NULL,
53 constraint pracownik_przesylka_fk
54 foreign key (id_przesylki)
55 references przesylka(id_przesylki)
56);