Skip to content

Commit b4587ef

Browse files
authored
Add files via upload
1 parent a12cd76 commit b4587ef

13 files changed

Lines changed: 359 additions & 0 deletions
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
CREATE TABLE
2+
products (
3+
product_name VARCHAR(100)
4+
);
5+
INSERT INTO products
6+
VALUES
7+
('Broccoli')
8+
,('Shampoo')
9+
,('Toothpaste')
10+
,('Candy');
11+
12+
ALTER TABLE
13+
products
14+
ADD COLUMN
15+
"id" SERIAL PRIMARY KEY;
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
ALTER TABLE
2+
products
3+
DROP CONSTRAINT products_pkey;
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
CREATE TABLE IF NOT EXISTS passports (
2+
id INTEGER GENERATED ALWAYS AS IDENTITY (START WITH 100 INCREMENT 1) PRIMARY KEY,
3+
nationality VARCHAR(50)
4+
);
5+
6+
INSERT INTO
7+
passports(nationality)
8+
VALUES
9+
('N34FG21B')
10+
, ('K65LO4R7')
11+
, ('ZE657QP2');
12+
13+
CREATE TABLE people (
14+
id SERIAL PRIMARY KEY
15+
, first_name VARCHAR(50)
16+
, salary DECIMAL(10, 2)
17+
, passport_id INT
18+
19+
, CONSTRAINT fk_people_passports
20+
FOREIGN KEY (passport_id)
21+
REFERENCES passports(id)
22+
);
23+
24+
INSERT INTO
25+
people (first_name, salary, passport_id)
26+
VALUES
27+
('Roberto', 43300.00, 101)
28+
, ('Tom', 56100.00, 102)
29+
, ('Yana', 60200.00, 100);
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
CREATE TABLE manufacturers (
2+
id SERIAL PRIMARY KEY
3+
, name VARCHAR(50)
4+
);
5+
6+
CREATE TABLE models (
7+
id INT GENERATED ALWAYS AS IDENTITY (START 1000 INCREMENT 1) PRIMARY KEY
8+
, model_name VARCHAR(50)
9+
, manufacturer_id INT
10+
11+
,CONSTRAINT fk_models_manufacturers
12+
FOREIGN KEY (manufacturer_id)
13+
REFERENCES manufacturers(id)
14+
);
15+
16+
CREATE TABLE production_years (
17+
id SERIAL PRIMARY KEY
18+
, established_on DATE
19+
, manufacturer_id INT
20+
21+
, CONSTRAINT fk_production_years_manufacturers
22+
FOREIGN KEY (manufacturer_id)
23+
REFERENCES manufacturers(id)
24+
);
25+
26+
INSERT INTO
27+
manufacturers(name)
28+
VALUES
29+
('BMW')
30+
, ('Tesla')
31+
, ('Lada');
32+
33+
INSERT INTO
34+
models(model_name, manufacturer_id)
35+
VALUES
36+
('X1', 1)
37+
, ('i6', 1)
38+
, ('Model S', 2)
39+
, ('Model X', 2)
40+
, ('Model 3', 2)
41+
, ('Nova', 3)
42+
;
43+
44+
INSERT INTO
45+
production_years(established_on, manufacturer_id)
46+
VALUES
47+
('1916-03-01', 1)
48+
, ('2003-01-01', 2)
49+
, ('1966-05-01', 3)
50+
;
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
CREATE TABLE customers (
2+
id SERIAL PRIMARY KEY
3+
, name VARCHAR(50)
4+
, date DATE
5+
);
6+
7+
CREATE TABLE photos (
8+
id SERIAL PRIMARY KEY
9+
, url VARCHAR(50)
10+
, place VARCHAR(50)
11+
, customer_id INT
12+
13+
, CONSTRAINT fk_photos_customers
14+
FOREIGN KEY (customer_id)
15+
REFERENCES customers(id)
16+
);
17+
18+
INSERT INTO
19+
customers(name, date)
20+
VALUES
21+
('Bella', '2022-03-25')
22+
, ('Philip', '2022-07-05')
23+
;
24+
25+
26+
INSERT INTO
27+
photos(url, place, customer_id)
28+
VALUES
29+
('bella_1111.com', 'National Theatre', 1)
30+
, ('bella_1112.com', 'Largo', 1)
31+
, ('bella_1113.com', 'The View Restaurant', 1)
32+
, ('philip_1121.com', 'Old Town', 2)
33+
, ('philip_1122.com', 'Rowing Canal', 2)
34+
, ('philip_1123.com', 'Roman Theater', 2)
35+
;
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
CREATE TABLE students (
2+
id SERIAL PRIMARY KEY
3+
, student_name VARCHAR(50)
4+
);
5+
6+
CREATE TABLE exams (
7+
id INT GENERATED ALWAYS AS IDENTITY (START 101 INCREMENT 1) PRIMARY KEY
8+
, exam_name VARCHAR(50)
9+
);
10+
11+
CREATE TABLE study_halls (
12+
id SERIAL PRIMARY KEY
13+
, study_hall_name VARCHAR(50)
14+
, exam_id INT
15+
16+
, CONSTRAINT fk_study_halls_exams
17+
FOREIGN KEY (exam_id)
18+
REFERENCES exams(id)
19+
);
20+
21+
CREATE TABLE students_exams (
22+
student_id INT
23+
, exam_id INT
24+
25+
, CONSTRAINT pk_students_exams
26+
PRIMARY KEY (student_id, exam_id)
27+
28+
, CONSTRAINT fk_students_exams_students
29+
FOREIGN KEY (student_id)
30+
REFERENCES students(id)
31+
32+
, CONSTRAINT fk_students_exams_exams
33+
FOREIGN KEY (exam_id)
34+
REFERENCES exams(id)
35+
);
36+
37+
38+
INSERT INTO
39+
students(student_name)
40+
VALUES
41+
('Mila')
42+
, ('Toni')
43+
, ('Ron');
44+
45+
INSERT INTO
46+
exams(exam_name)
47+
VALUES
48+
('Python Advanced')
49+
, ('Python OOP')
50+
, ('PostgreSQL');
51+
52+
INSERT INTO
53+
study_halls(study_hall_name, exam_id)
54+
VALUES
55+
('Open Source Hall', 102)
56+
, ('Inspiration Hall', 101)
57+
, ('Creative Hall', 103)
58+
, ('Masterclass Hall', 103)
59+
, ('Information Security Hall', 103);;
60+
61+
INSERT INTO
62+
students_exams
63+
VALUES
64+
(1, 101)
65+
, (1, 102)
66+
, (2, 101)
67+
, (3, 103)
68+
, (2, 102)
69+
, (2, 103);;
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
CREATE TABLE item_types (
2+
id SERIAL PRIMARY KEY
3+
, item_type_name VARCHAR(50)
4+
);
5+
6+
CREATE TABLE cities (
7+
id SERIAL PRIMARY KEY
8+
, city_name VARCHAR(50)
9+
);
10+
11+
CREATE TABLE items (
12+
id SERIAL PRIMARY KEY
13+
, item_name VARCHAR(40)
14+
, item_type_id INT
15+
16+
, CONSTRAINT fk_items_item_types
17+
FOREIGN KEY (item_type_id)
18+
REFERENCES item_types(id)
19+
);
20+
21+
CREATE TABLE customers (
22+
id SERIAL PRIMARY KEY
23+
, customer_name VARCHAR(100)
24+
, birthday DATE
25+
, city_id INT
26+
27+
, CONSTRAINT fk_customers_cities
28+
FOREIGN KEY (city_id)
29+
REFERENCES cities(id)
30+
);
31+
32+
CREATE TABLE orders (
33+
id SERIAL PRIMARY KEY
34+
, customer_id INT
35+
36+
, CONSTRAINT fk_orders_customers
37+
FOREIGN KEY (customer_id)
38+
REFERENCES customers(id)
39+
);
40+
41+
42+
CREATE TABLE order_items (
43+
order_id INT
44+
, item_id INT
45+
46+
, CONSTRAINT pk_order_items
47+
PRIMARY KEY (order_id, item_id)
48+
49+
, CONSTRAINT fk_order_items_orders
50+
FOREIGN KEY (order_id)
51+
REFERENCES orders(id)
52+
53+
, CONSTRAINT fk_order_items_items
54+
FOREIGN KEY (item_id)
55+
REFERENCES items(id)
56+
);
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
ALTER TABLE
2+
countries
3+
ADD CONSTRAINT
4+
fk_countries_continents
5+
FOREIGN KEY
6+
(continent_code)
7+
REFERENCES continents(continent_code)
8+
ON DELETE CASCADE;
9+
10+
ALTER TABLE
11+
countries
12+
ADD CONSTRAINT
13+
fk_countries_currencies
14+
FOREIGN KEY
15+
(currency_code)
16+
REFERENCES
17+
currencies(currency_code)
18+
ON DELETE CASCADE;
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
ALTER TABLE
2+
countries_rivers
3+
4+
ADD CONSTRAINT
5+
fk_countries_rivers_rivers
6+
FOREIGN KEY
7+
(river_id)
8+
REFERENCES
9+
rivers(id)
10+
ON UPDATE CASCADE
11+
12+
, ADD CONSTRAINT
13+
fk_countries_rivers_countries
14+
FOREIGN KEY
15+
(country_code)
16+
REFERENCES
17+
countries(country_code)
18+
ON UPDATE CASCADE;
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
CREATE TABLE customers (
2+
ID SERIAL PRIMARY KEY
3+
, customer_name VARCHAR(50)
4+
);
5+
6+
CREATE TABLE contacts (
7+
ID SERIAL PRIMARY KEY
8+
, contact_name VARCHAR(50)
9+
, phone VARCHAR(50)
10+
, email VARCHAR (50)
11+
, customer_id INT
12+
13+
, CONSTRAINT fk_contacts_customers
14+
FOREIGN KEY (customer_id)
15+
REFERENCES customers(id)
16+
ON DELETE SET NULL
17+
ON UPDATE CASCADE
18+
);
19+
20+
INSERT INTO
21+
customers(customer_name)
22+
VALUES
23+
('BlueBird Inc')
24+
, ('Dolphin LLC');
25+
26+
INSERT INTO
27+
contacts(customer_id, contact_name, phone, email)
28+
VALUES
29+
(1,'John Doe','(408)-111-1234','john.doe@bluebird.dev')
30+
, (1,'Jane Doe','(408)-111-1235','jane.doe@bluebird.dev')
31+
, (2,'David Wright','(408)-222-1234','david.wright@dolphin.dev');
32+
33+
DELETE FROM
34+
customers
35+
WHERE
36+
id = 1;

0 commit comments

Comments
 (0)