Skip to content

Commit d002c20

Browse files
committed
Added BASE folder in the MVCPracticeAdvanced section of a small course on Java EE
1 parent 12eae6d commit d002c20

File tree

3 files changed

+159
-0
lines changed

3 files changed

+159
-0
lines changed
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-- Поле image не будет содержать саму картинку, а только ссылку,
2+
-- например на некое облако или место на локальном диске и т.п.
3+
-- поэтому применяем VARCHAR(124).
4+
5+
create table users (
6+
id SERIAL PRIMARY KEY ,
7+
name VARCHAR(124) NOT NULL ,
8+
birthday DATE NOT NULL ,
9+
email VARCHAR(124) NOT NULL ,
10+
image VARCHAR(225) NOT NULL ,
11+
password VARCHAR(32) NOT NULL ,
12+
role VARCHAR(32) NOT NULL ,
13+
gender VARCHAR(16) NOT NULL
14+
);
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
INSERT INTO airport (code, country, city)
2+
VALUES ('MNK', 'Беларусь', 'Минск'),
3+
('LDN', 'Англия', 'Лондон'),
4+
('MSK', 'Россия', 'Москва'),
5+
('BSL', 'Испания', 'Барселона');
6+
7+
SELECT * FROM airport;
8+
9+
INSERT INTO aircraft (model)
10+
VALUES ('Боинг 777-300'),
11+
('Боинг 737-300'),
12+
('Аэробус A320-200'),
13+
('Суперджет-100');
14+
15+
SELECT * FROM aircraft;
16+
17+
INSERT INTO seat (aircraft_id, seat_no)
18+
SELECT id, s.column1
19+
FROM aircraft
20+
CROSS JOIN (VALUES ('A1'), ('A2'), ('B1'), ('B2'), ('C1'), ('C2'), ('D1'), ('D2') ORDER BY 1) s;
21+
22+
SELECT * FROM seat;
23+
24+
INSERT INTO flight (flight_no, departure_date, departure_airport_code, arrival_date, arrival_airport_code, aircraft_id,
25+
status)
26+
VALUES
27+
('MN3002', '2020-06-14T14:30', 'MNK', '2020-06-14T18:07', 'LDN', 1, 'ARRIVED'),
28+
('MN3002', '2020-06-16T09:15', 'LDN', '2020-06-16T13:00', 'MNK', 1, 'ARRIVED'),
29+
('BC2801', '2020-07-28T23:25', 'MNK', '2020-07-29T02:43', 'LDN', 2, 'ARRIVED'),
30+
('BC2801', '2020-08-01T11:00', 'LDN', '2020-08-01T14:15', 'MNK', 2, 'DEPARTED'),
31+
('TR3103', '2020-05-03T13:10', 'MSK', '2020-05-03T18:38', 'BSL', 3, 'ARRIVED'),
32+
('TR3103', '2020-05-10T07:15', 'BSL', '2020-05-10T012:44', 'MSK', 3, 'CANCELLED'),
33+
('CV9827', '2020-09-09T18:00', 'MNK', '2020-09-09T19:15', 'MSK', 4, 'SCHEDULED'),
34+
('CV9827', '2020-09-19T08:55', 'MSK', '2020-09-19T10:05', 'MNK', 4, 'SCHEDULED'),
35+
('QS8712', '2020-12-18T03:35', 'MNK', '2020-12-18T06:46', 'LDN', 2, 'ARRIVED');
36+
37+
SELECT * FROM flight;
38+
39+
INSERT INTO ticket (passenger_no, passenger_name, flight_id, seat_no, cost)
40+
VALUES ('112233', 'Иван Иванов', 1, 'A1', 200),
41+
('23234A', 'Петр Петров', 1, 'B1', 180),
42+
('SS988D', 'Светлана Светикова', 1, 'B2', 175),
43+
('QYASDE', 'Андрей Андреев', 1, 'C2', 175),
44+
('POQ234', 'Иван Кожемякин', 1, 'D1', 160),
45+
('898123', 'Олег Рубцов', 1, 'A2', 198),
46+
('555321', 'Екатерина Петренко', 2, 'A1', 250),
47+
('QO23OO', 'Иван Розмаринов', 2, 'B2', 225),
48+
('9883IO', 'Иван Кожемякин', 2, 'C1', 217),
49+
('123UI2', 'Андрей Буйнов', 2, 'C2', 227),
50+
('SS988D', 'Светлана Светикова', 2, 'D2', 277),
51+
('EE2344', 'Дмитрий Трусцов', 3, 'А1', 300),
52+
('AS23PP', 'Максим Комсомольцев', 3, 'А2', 285),
53+
('322349', 'Эдуард Щеглов', 3, 'B1', 99),
54+
('DL123S', 'Игорь Беркутов', 3, 'B2', 199),
55+
('MVM111', 'Алексей Щербин', 3, 'C1', 299),
56+
('ZZZ111', 'Денис Колобков', 3, 'C2', 230),
57+
('234444', 'Иван Старовойтов', 3, 'D1', 180),
58+
('LLLL12', 'Людмила Старовойтова', 3, 'D2', 224),
59+
('RT34TR', 'Степан Дор', 4, 'A1', 129),
60+
('999666', 'Анастасия Шепелева', 4, 'A2', 152),
61+
('234444', 'Иван Старовойтов', 4, 'B1', 140),
62+
('LLLL12', 'Людмила Старовойтова', 4, 'B2', 140),
63+
('LLLL12', 'Роман Дронов', 4, 'D2', 109),
64+
('112233', 'Иван Иванов', 5, 'С2', 170),
65+
('NMNBV2', 'Лариса Тельникова', 5, 'С1', 185),
66+
('DSA586', 'Лариса Привольная', 5, 'A1', 204),
67+
('DSA583', 'Артур Мирный', 5, 'B1', 189),
68+
('DSA581', 'Евгений Кудрявцев', 6, 'A1', 204),
69+
('EE2344', 'Дмитрий Трусцов', 6, 'A2', 214),
70+
('AS23PP', 'Максим Комсомольцев', 6, 'B2', 176),
71+
('112233', 'Иван Иванов', 6, 'B1', 135),
72+
('309623', 'Татьяна Крот', 6, 'С1', 155),
73+
('319623', 'Юрий Дувинков', 6, 'D1', 125),
74+
('322349', 'Эдуард Щеглов', 7, 'A1', 69),
75+
('DIOPSL', 'Евгений Безфамильная', 7, 'A2', 58),
76+
('DIOPS1', 'Константин Швец', 7, 'D1', 65),
77+
('DIOPS2', 'Юлия Швец', 7, 'D2', 65),
78+
('1IOPS2', 'Ник Говриленко', 7, 'C2', 73),
79+
('999666', 'Анастасия Шепелева', 7, 'B1', 66),
80+
('23234A', 'Петр Петров', 7, 'C1', 80),
81+
('QYASDE', 'Андрей Андреев', 8, 'A1', 100),
82+
('1QAZD2', 'Лариса Потемнкина', 8, 'A2', 89),
83+
('5QAZD2', 'Карл Хмелев', 8, 'B2', 79),
84+
('2QAZD2', 'Жанна Хмелева', 8, 'С2', 77),
85+
('BMXND1', 'Светлана Хмурая', 8, 'В2', 94),
86+
('BMXND2', 'Кирилл Сарычев', 8, 'D1', 81),
87+
('SS988D', 'Светлана Светикова', 9, 'A2', 222),
88+
('SS978D', 'Андрей Желудь', 9, 'A1', 198),
89+
('SS968D', 'Дмитрий Воснецов', 9, 'B1', 243),
90+
('SS958D', 'Максим Гребцов', 9, 'С1', 251),
91+
('112233', 'Иван Иванов', 9, 'С2', 135),
92+
('NMNBV2', 'Лариса Тельникова', 9, 'B2', 217),
93+
('23234A', 'Петр Петров', 9, 'D1', 189),
94+
('123951', 'Полина Зверева', 9, 'D2', 234);
95+
96+
SELECT * FROM ticket;
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
CREATE SCHEMA flight_repository;
2+
3+
CREATE TABLE airport
4+
(
5+
code CHAR(3) PRIMARY KEY ,
6+
country VARCHAR(256) NOT NULL ,
7+
city VARCHAR(128) NOT NULL
8+
);
9+
10+
CREATE TABLE aircraft
11+
(
12+
id SERIAL PRIMARY KEY ,
13+
model VARCHAR(128) NOT NULL
14+
);
15+
16+
CREATE TABLE seat
17+
(
18+
aircraft_id INT REFERENCES aircraft (id),
19+
seat_no VARCHAR(4) NOT NULL ,
20+
PRIMARY KEY (aircraft_id, seat_no)
21+
);
22+
23+
CREATE TABLE flight
24+
(
25+
id BIGSERIAL PRIMARY KEY ,
26+
flight_no VARCHAR(16) NOT NULL ,
27+
departure_date TIMESTAMP NOT NULL ,
28+
departure_airport_code CHAR(3) REFERENCES airport(code) NOT NULL ,
29+
arrival_date TIMESTAMP NOT NULL ,
30+
arrival_airport_code CHAR(3) REFERENCES airport(code) NOT NULL ,
31+
aircraft_id INT REFERENCES aircraft (id) NOT NULL ,
32+
status VARCHAR(32) NOT NULL
33+
);
34+
35+
CREATE TABLE ticket
36+
(
37+
id BIGSERIAL PRIMARY KEY ,
38+
passenger_no VARCHAR(32) NOT NULL ,
39+
passenger_name VARCHAR(128) NOT NULL ,
40+
flight_id BIGINT REFERENCES flight (id) NOT NULL ,
41+
seat_no VARCHAR(4) NOT NULL,
42+
cost NUMERIC(8, 2) NOT NULL
43+
);
44+
45+
CREATE TABLE test_for_delete
46+
(
47+
id SERIAL PRIMARY KEY ,
48+
not_null_info VARCHAR(128) NOT NULL
49+
);

0 commit comments

Comments
 (0)