Skip to content

Commit a50db7d

Browse files
committed
add: 2.3 init
1 parent c3d917e commit a50db7d

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
DROP TABLE IF EXISTS book;
2+
DROP TABLE IF EXISTS genre;
3+
DROP TABLE IF EXISTS author;
4+
DROP TABLE IF EXISTS supply;
5+
6+
CREATE TABLE genre(
7+
genre_id SERIAL PRIMARY KEY,
8+
name_genre VARCHAR(30)
9+
);
10+
11+
CREATE TABLE author(
12+
author_id SERIAL PRIMARY KEY,
13+
name_author VARCHAR(50)
14+
);
15+
16+
CREATE TABLE book (
17+
book_id SERIAL PRIMARY KEY,
18+
title VARCHAR(50),
19+
author_id INT NOT NULL,
20+
genre_id INT,
21+
price DECIMAL(8,2),
22+
amount INT,
23+
FOREIGN KEY (author_id) REFERENCES author (author_id) ON DELETE CASCADE,
24+
FOREIGN KEY (genre_id) REFERENCES genre (genre_id) ON DELETE SET NULL
25+
);
26+
27+
CREATE TABLE supply(
28+
supply_id SERIAL PRIMARY KEY,
29+
title VARCHAR(50),
30+
author VARCHAR(50),
31+
price DECIMAL(8, 2),
32+
amount INT
33+
);
34+
35+
INSERT INTO author (name_author)
36+
VALUES ('Булгаков М.А.'),
37+
('Достоевский Ф.М.'),
38+
('Есенин С.А.'),
39+
('Пастернак Б.Л.'),
40+
('Лермонтов М.Ю.');
41+
42+
INSERT INTO genre (name_genre)
43+
VALUES ('Роман'),
44+
('Поэзия'),
45+
('Приключения');
46+
47+
INSERT INTO book(title, author_id, genre_id, price, amount)
48+
VALUES ('Мастер и Маргарита', 1, 1, 670.99, 3),
49+
('Белая гвардия', 1, 1, 540.50, 5),
50+
('Идиот', 2, 1, 460.00, 10),
51+
('Братья Карамазовы', 2, 1, 799.01, 3),
52+
('Игрок', 2, 1, 480.50, 10),
53+
('Стихотворения и поэмы', 3, 2, 650.00, 15),
54+
('Черный человек', 3, 2, 570.20, 6),
55+
('Лирика', 4, 2, 518.99, 2);
56+
57+
INSERT INTO supply(title, author, price, amount)
58+
VALUES ('Доктор Живаго', 'Пастернак Б.Л.', 380.80, 4),
59+
('Черный человек', 'Есенин С.А.', 570.20, 6),
60+
('Белая гвардия', 'Булгаков М.А.', 540.50, 7),
61+
('Идиот', 'Достоевский Ф.М.', 360.80, 3),
62+
('Стихотворения и поэмы', 'Лермонтов М.Ю.', 255.90, 4),
63+
('Остров сокровищ', 'Стивенсон Р.Л.', 599.99, 5);

0 commit comments

Comments
 (0)