From e4eb8f40bdf7069d66ddbc0473ec735669591f59 Mon Sep 17 00:00:00 2001 From: Serhii Kermas Date: Fri, 1 Aug 2025 15:58:17 +0300 Subject: [PATCH 1/2] Solution --- task.sql | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/task.sql b/task.sql index cc65344..91f4611 100644 --- a/task.sql +++ b/task.sql @@ -9,14 +9,30 @@ CREATE TABLE Countries ( PRIMARY KEY (ID) ); +CREATE TABLE Addresses( +ID INT, +Street VARCHAR(50), +City VARCHAR(50), +CountryID INT, +FOREIGN KEY (CountryID) REFERENCES Countries(ID) ON DELETE NO ACTION, +PRIMARY KEY (ID) +); + +CREATE TABLE Warehouses( + ID INT, + WarehouseName VARCHAR(50), + WarehouseAddress VARCHAR(50), + WarehouseAmount INT, + PRIMARY KEY (ID) +); + CREATE TABLE ProductInventory ( ID INT, ProductName VARCHAR(50), - WarehouseAmount INT, - WarehouseName VARCHAR(50), - WarehouseAddress VARCHAR(50), - CountryID INT, - FOREIGN KEY (CountryID) REFERENCES Countries(ID) ON DELETE NO ACTION, + WarehouseID INT, + FOREIGN KEY (WarehouseID) REFERENCES Warehouses(ID) ON DELETE NO ACTION, + AddressID INT, + FOREIGN KEY (AddressID) REFERENCES Addresses(ID) ON DELETE NO ACTION, PRIMARY KEY (ID) ); @@ -26,8 +42,18 @@ INSERT INTO Countries (ID,Name) VALUES (1, 'Country1'); INSERT INTO Countries (ID,Name) VALUES (2, 'Country2'); + +INSERT INTO Addresses (ID,Street,City,CountryID) + VALUES (1, 'City-1', 'Street-1', 1); +INSERT INTO Addresses (ID,Street,City,CountryID) + VALUES (2, 'City-2', 'Street-2', 2); + +INSERT INTO Warehouses (ID,WarehouseName,WarehouseAmount) + VALUES (1, 'Warehouse-1', 2); +INSERT INTO Warehouses (ID,WarehouseName,WarehouseAmount) + VALUES (2, 'Warehouse-2', 5); -INSERT INTO ProductInventory (ID,ProductName,WarehouseAmount,WarehouseName,WarehouseAddress,CountryID) - VALUES (1, 'AwersomeProduct', 2, 'Warehouse-1', 'City-1, Street-1',1); -INSERT INTO ProductInventory (ID,ProductName,WarehouseAmount,WarehouseName,WarehouseAddress,CountryID) - VALUES (2, 'AwersomeProduct', 5, 'Warehouse-2', 'City-2, Street-2',2); +INSERT INTO ProductInventory (ID,ProductName,WarehouseID,AddressID) + VALUES (1, 'AwersomeProduct', 1, 1); +INSERT INTO ProductInventory (ID,ProductName,WarehouseID,AddressID) + VALUES (2, 'AwersomeProduct', 2, 2); From 5070025b52072f0bd5328382302e35d914e0955c Mon Sep 17 00:00:00 2001 From: Serhii Kermas Date: Fri, 1 Aug 2025 16:05:59 +0300 Subject: [PATCH 2/2] Solution --- task.sql | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/task.sql b/task.sql index 91f4611..1dc15f8 100644 --- a/task.sql +++ b/task.sql @@ -21,7 +21,6 @@ PRIMARY KEY (ID) CREATE TABLE Warehouses( ID INT, WarehouseName VARCHAR(50), - WarehouseAddress VARCHAR(50), WarehouseAmount INT, PRIMARY KEY (ID) ); @@ -44,9 +43,9 @@ INSERT INTO Countries (ID,Name) VALUES (2, 'Country2'); INSERT INTO Addresses (ID,Street,City,CountryID) - VALUES (1, 'City-1', 'Street-1', 1); + VALUES (1, 'Street-1', 'City-1', 1); INSERT INTO Addresses (ID,Street,City,CountryID) - VALUES (2, 'City-2', 'Street-2', 2); + VALUES (2, 'Street-2', 'City-2', 2); INSERT INTO Warehouses (ID,WarehouseName,WarehouseAmount) VALUES (1, 'Warehouse-1', 2);