Initial commit
This commit is contained in:
commit
ff50ea6784
12 changed files with 509 additions and 0 deletions
138
db.sql
Normal file
138
db.sql
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
CREATE TABLE roles (
|
||||
role_id SERIAL PRIMARY KEY,
|
||||
role_name VARCHAR(50) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE users (
|
||||
user_id SERIAL PRIMARY KEY,
|
||||
login VARCHAR(50) UNIQUE NOT NULL,
|
||||
password VARCHAR(100) NOT NULL,
|
||||
full_name VARCHAR(150) NOT NULL,
|
||||
role_id INTEGER REFERENCES roles(role_id)
|
||||
);
|
||||
|
||||
CREATE TABLE categories (
|
||||
category_id SERIAL PRIMARY KEY,
|
||||
category_name VARCHAR(100) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE manufacturers (
|
||||
manufacturer_id SERIAL PRIMARY KEY,
|
||||
manufacturer_name VARCHAR(100) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE suppliers (
|
||||
supplier_id SERIAL PRIMARY KEY,
|
||||
supplier_name VARCHAR(100) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE age_groups (
|
||||
age_group_id SERIAL PRIMARY KEY,
|
||||
age_label VARCHAR(20) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE toys (
|
||||
toy_id SERIAL PRIMARY KEY,
|
||||
toy_name VARCHAR(150) NOT NULL,
|
||||
category_id INTEGER REFERENCES categories(category_id),
|
||||
manufacturer_id INTEGER REFERENCES manufacturers(manufacturer_id),
|
||||
price NUMERIC(10,2) NOT NULL,
|
||||
discount INTEGER DEFAULT 0,
|
||||
image VARCHAR(255)
|
||||
);
|
||||
|
||||
CREATE TABLE toy_age_groups (
|
||||
toy_id INTEGER REFERENCES toys(toy_id),
|
||||
age_group_id INTEGER REFERENCES age_groups(age_group_id),
|
||||
PRIMARY KEY (toy_id, age_group_id)
|
||||
);
|
||||
|
||||
CREATE TABLE toy_suppliers (
|
||||
toy_id INTEGER REFERENCES toys(toy_id),
|
||||
supplier_id INTEGER REFERENCES suppliers(supplier_id),
|
||||
PRIMARY KEY (toy_id, supplier_id)
|
||||
);
|
||||
|
||||
CREATE TABLE stock (
|
||||
toy_id INTEGER PRIMARY KEY REFERENCES toys(toy_id),
|
||||
quantity INTEGER NOT NULL
|
||||
);
|
||||
|
||||
INSERT INTO roles (role_name) VALUES
|
||||
('Гость'),
|
||||
('Покупатель'),
|
||||
('Сотрудник'),
|
||||
('Администратор');
|
||||
|
||||
INSERT INTO users (login, password, full_name, role_id) VALUES
|
||||
('guest','guest','Гость',1),
|
||||
('anna','111','Иванова Анна Сергеевна',2),
|
||||
('oleg','222','Кузнецов Олег Петрович',2),
|
||||
('manager','333','Смирнова Мария Андреевна',3),
|
||||
('admin','admin','Сидоров Максим Игоревич',4);
|
||||
|
||||
INSERT INTO categories (category_name) VALUES
|
||||
('Мягкие игрушки'),
|
||||
('Конструкторы'),
|
||||
('Развивающие игрушки'),
|
||||
('Настольные игры'),
|
||||
('Роботы');
|
||||
|
||||
INSERT INTO manufacturers (manufacturer_name) VALUES
|
||||
('Lego'),
|
||||
('Hasbro'),
|
||||
('Mattel'),
|
||||
('PlaySmart'),
|
||||
('Fisher Price');
|
||||
|
||||
INSERT INTO suppliers (supplier_name) VALUES
|
||||
('ООО Радуга'),
|
||||
('ИП Смайл'),('ToyImport'),
|
||||
('KidsWorld');
|
||||
|
||||
INSERT INTO age_groups (age_label) VALUES
|
||||
('0-1'),
|
||||
('1-3'),
|
||||
('3-5'),
|
||||
('5-7'),
|
||||
('7+');
|
||||
|
||||
INSERT INTO toys (toy_name, category_id, manufacturer_id, price, discount, image) VALUES
|
||||
('Плюшевый мишка',1,4,1500,10,'bear.png'),
|
||||
('Конструктор City',2,1,4200,25,'city.png'),
|
||||
('Развивающий куб',3,5,2300,0,NULL),
|
||||
('Робот трансформер',5,2,5200,30,'robot.png'),
|
||||
('Настольная игра Лото',4,3,1800,5,NULL),
|
||||
('Кукла классическая',1,3,2700,15,'doll.png'),
|
||||
('Конструктор Junior',2,1,3100,0,NULL),
|
||||
('Музыкальный телефон',3,5,2100,20,NULL),
|
||||
('Робот на пульте',5,2,6400,35,'rc.png'),
|
||||
('Игра Мемори',4,3,1600,0,NULL);
|
||||
|
||||
INSERT INTO toy_age_groups (toy_id, age_group_id) VALUES
|
||||
(1,2),(1,3),
|
||||
(2,4),(2,5),
|
||||
(3,2),
|
||||
(4,4),(4,5),
|
||||
(5,3),(5,4),
|
||||
(6,3),(6,4),
|
||||
(7,2),(7,3),
|
||||
(8,2),
|
||||
(9,5),
|
||||
(10,3),(10,4);
|
||||
|
||||
INSERT INTO toy_suppliers (toy_id, supplier_id) VALUES
|
||||
(1,1),(1,2),
|
||||
(2,3),
|
||||
(3,1),(3,4),
|
||||
(4,2),(4,3),
|
||||
(5,1),
|
||||
(6,4),
|
||||
(7,3),
|
||||
(8,2),(8,4),
|
||||
(9,3),
|
||||
(10,1),(10,2);
|
||||
|
||||
INSERT INTO stock (toy_id, quantity) VALUES
|
||||
(1,12),(2,5),(3,0),(4,7),(5,10),
|
||||
(6,4),(7,8),(8,0),(9,3),(10,15);
|
||||
Loading…
Add table
Add a link
Reference in a new issue