· 6 years ago · Jun 13, 2019, 08:40 PM
1CREATE DATABASE Koszykowka;
2USE Koszykowka;
3CREATE TABLE IF NOT EXISTS Liga( id_ligi int PRIMARY KEY AUTO_INCREMENT NOT NULL, nazwa varchar(50) NOT NULL );
4
5
6CREATE TABLE IF NOT EXISTS Sezon( id_sezonu int PRIMARY KEY AUTO_INCREMENT NOT NULL, nazwa varchar(15) NOT NULL);
7
8
9CREATE TABLE IF NOT EXISTS Druzyna(
10 id_druzyny int PRIMARY KEY AUTO_INCREMENT NOT NULL,
11 nazwa varchar(60) NOT NULL,
12 rok_zalozenia year,
13 id_ligi int NOT NULL,
14 INDEX liga_index (id_ligi)
15);
16
17
18CREATE TABLE IF NOT EXISTS Sezon_Info(
19 id_sezonu int NOT NULL,
20 id_druzyny int NOT NULL,
21 ilosc_wygranych int(8) UNSIGNED NOT NULL DEFAULT 0,
22 ilosc_przegranych int(8) UNSIGNED NOT NULL DEFAULT 0,
23
24 INDEX sezon_index (id_sezonu),
25 INDEX druzyna_index (id_druzyny)
26);
27
28
29CREATE TABLE IF NOT EXISTS Zawodnik(
30 id_zawodnika int PRIMARY KEY AUTO_INCREMENT NOT NULL,
31 imie varchar(60) NOT NULL,
32 nazwisko varchar(100) NOT NULL,
33 data_urodzenia date,
34 kraj_pochodzenia varchar(60),
35 pozycja enum('PG', 'SG', 'SF', 'PF', 'C') NOT NULL,
36 id_druzyny int,
37
38 INDEX druzyna_index (id_druzyny)
39);
40
41
42CREATE TABLE IF NOT EXISTS Mecz(
43 id_meczu int PRIMARY KEY AUTO_INCREMENT NOT NULL,
44 data_meczu datetime NOT NULL,
45 punkty_druzyny1 int(8) UNSIGNED NOT NULL DEFAULT 0,
46 punkty_druzyny2 int(8) UNSIGNED NOT NULL DEFAULT 0,
47 id_druzyna1 int NOT NULL,
48 id_druzyna2 int NOT NULL,
49
50 INDEX druzyna1_index (id_druzyna1),
51 INDEX druzyna2_index (id_druzyna2)
52
53
54);
55
56
57CREATE TABLE IF NOT EXISTS Akcja(
58 id_akcji int PRIMARY KEY AUTO_INCREMENT NOT NULL,
59 typ_akcji enum('3pkt', '2pkt', '1pkt', 'faul', 'zbiorka', 'asysta') NOT NULL,
60 id_zawodnika int NOT NULL,
61 id_meczu int NOT NULL,
62
63 INDEX zawodnik_index (id_zawodnika),
64 INDEX mecz_index (id_meczu)
65
66);
67
68INSERT INTO `Liga` (`id_ligi`, `nazwa`) VALUES ('1', 'Liga VBA');
69
70
71INSERT INTO `Druzyna` (`id_druzyny`, `nazwa`, `rok_zalozenia`, `id_ligi`) VALUES ('1', 'PKBasketball', '2012', '1');
72
73INSERT INTO `Druzyna` (`id_druzyny`, `nazwa`, `rok_zalozenia`, `id_ligi`) VALUES ('2', 'AGHBasketball', '2010', '1');
74
75
76INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('1', 'Mateusz', 'Bednarski', '1997-03-02', 'Polska', 'PG', '1');
77
78INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('2', 'Maciej', 'Czarnota', '1998-05-12', 'Polska', 'SG', '1');
79
80INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('3', 'Mariusz', 'Trepka', '1997-01-01', 'Polska', 'PF', '1');
81
82INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('4', 'Mateusz', 'Wiorek', '1998-06-06', 'Polska', 'C', '1');
83
84INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('5', 'Jan', 'Kowalski', '1995-03-03', 'Polska', 'SF', '2');
85
86INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('6', 'Adam', 'Nowak', '1996-04-04', 'Polska', 'PF', '2');
87
88INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('7', 'Jonas', 'Langer', '1999-07-09', 'Niemcy', 'PG', '2');
89
90INSERT INTO `Zawodnik` (`id_zawodnika`, `imie`, `nazwisko`, `data_urodzenia`, `kraj_pochodzenia`, `pozycja`, `id_druzyny`) VALUES ('8', 'Aegon', 'Elev', '1995-11-15', 'Szkocja', 'SG', '2');
91
92
93INSERT INTO `Mecz` (`id_meczu`, `data_meczu`, `punkty_druzyny1`, `punkty_druzyny2`, `id_druzyna1`, `id_druzyna2`) VALUES ('1', '2019-05-20 12:30:00', '42', '39', '1', '2');
94
95
96INSERT INTO `Akcja` (`id_akcji`, `typ_akcji`, `id_zawodnika`, `id_meczu`) VALUES ('1', '3pkt', '4', '1');
97
98INSERT INTO `Akcja` (`id_akcji`, `typ_akcji`, `id_zawodnika`, `id_meczu`) VALUES ('2', 'zbiorka', '2', '1');
99
100INSERT INTO `Akcja` (`id_akcji`, `typ_akcji`, `id_zawodnika`, `id_meczu`) VALUES ('3', '2pkt', '8', '1');
101
102INSERT INTO `Akcja` (`id_akcji`, `typ_akcji`, `id_zawodnika`, `id_meczu`) VALUES ('4', 'faul', '7', '1');
103
104
105INSERT INTO `Sezon` (`id_sezonu`, `nazwa`) VALUES ('1', 'sezon 2018/2019');
106
107
108INSERT INTO `Sezon_Info` (`id_sezonu`, `id_druzyny`, `ilosc_wygranych`, `ilosc_przegranych`) VALUES ('1', '1', '12', '3');
109
110INSERT INTO `Sezon_Info` (`id_sezonu`, `id_druzyny`, `ilosc_wygranych`, `ilosc_przegranych`) VALUES ('1', '2', '10', '4');
111
112ALTER TABLE Druzyna
113ADD FOREIGN KEY (id_ligi) REFERENCES liga(id_ligi) ON UPDATE CASCADE ON DELETE RESTRICT;
114
115ALTER TABLE Sezon_info
116ADD FOREIGN KEY (id_sezonu) REFERENCES sezon(id_sezonu) ON UPDATE CASCADE ON DELETE RESTRICT,
117 FOREIGN KEY (id_druzyny) REFERENCES druzyna(id_druzyny) ON UPDATE CASCADE ON DELETE RESTRICT;
118
119ALTER TABLE Zawodnik
120ADD FOREIGN KEY (id_druzyny) REFERENCES druzyna(id_druzyny) ON UPDATE CASCADE ON DELETE RESTRICT;
121
122ALTER TABLE Mecz
123ADD FOREIGN KEY (id_druzyna1) REFERENCES druzyna(id_druzyny) ON UPDATE CASCADE ON DELETE RESTRICT,
124 FOREIGN KEY (id_druzyna2) REFERENCES druzyna(id_druzyny) ON UPDATE CASCADE ON DELETE RESTRICT;
125
126ALTER TABLE Akcja
127ADD FOREIGN KEY (id_zawodnika) REFERENCES zawodnik(id_zawodnika) ON UPDATE CASCADE ON DEL