From 571f87c3e4cf4fd83715bc4528b393ab40d5ba2d Mon Sep 17 00:00:00 2001 From: Mykola Honcharenko Date: Sun, 7 Jun 2026 22:59:37 +0300 Subject: [PATCH 1/2] Solution --- .idea/.gitignore | 6 +++++ .idea/dataSources.xml | 12 ++++++++++ .idea/data_source_mapping.xml | 7 ++++++ .idea/modules.xml | 8 +++++++ .idea/rda_task_1_create_database.iml | 8 +++++++ .idea/sqldialects.xml | 7 ++++++ .idea/vcs.xml | 6 +++++ task.sql | 33 +++++++++++++++++++++++++++- 8 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/dataSources.xml create mode 100644 .idea/data_source_mapping.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/rda_task_1_create_database.iml create mode 100644 .idea/sqldialects.xml create mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..8bf4d45 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,6 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml new file mode 100644 index 0000000..fe0ee73 --- /dev/null +++ b/.idea/dataSources.xml @@ -0,0 +1,12 @@ + + + + + mysql.8 + true + com.mysql.cj.jdbc.Driver + jdbc:mysql://192.168.1.106:3306 + $ProjectFileDir$ + + + \ No newline at end of file diff --git a/.idea/data_source_mapping.xml b/.idea/data_source_mapping.xml new file mode 100644 index 0000000..4ac79ec --- /dev/null +++ b/.idea/data_source_mapping.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..6c912fd --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/rda_task_1_create_database.iml b/.idea/rda_task_1_create_database.iml new file mode 100644 index 0000000..0399c4b --- /dev/null +++ b/.idea/rda_task_1_create_database.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml new file mode 100644 index 0000000..8d63cf4 --- /dev/null +++ b/.idea/sqldialects.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/task.sql b/task.sql index 0a66d93..7ded116 100644 --- a/task.sql +++ b/task.sql @@ -1 +1,32 @@ -# Write your SQL code for the database creation here. Good luck! +CREATE DATABASE ShopDB; +USE ShopDB; + +CREATE TABLE Products ( + ID INT AUTO_INCREMENT PRIMARY KEY, + Name VARCHAR(50), + Description VARCHAR(100), + Price INT, + WarehouseAmount INT +); + +CREATE TABLE Customers ( + ID INT AUTO_INCREMENT PRIMARY KEY, + FirstName VARCHAR(50), + LastName VARCHAR(50), + Email VARCHAR(50), + Address VARCHAR(100) +); + +CREATE TABLE Orders ( + ID INT AUTO_INCREMENT PRIMARY KEY, + CustomerID INT, + Date DATE, + FOREIGN KEY (CustomerID) REFERENCES Customers (ID) ON DELETE SET NULL +); + +CREATE TABLE OrderItems ( + ID INT AUTO_INCREMENT PRIMARY KEY, + OrderID INT, + ProductID INT, + FOREIGN KEY (OrderID) REFERENCES Orders(ID) ON DELETE SET NULL +) \ No newline at end of file From 4a7f649715f8fb41a66314de3033c010d2c96498 Mon Sep 17 00:00:00 2001 From: Mykola Honcharenko Date: Sun, 7 Jun 2026 23:12:15 +0300 Subject: [PATCH 2/2] add foreign key constraint linking ProductID to Products(ID) in OrderItems table --- task.sql | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/task.sql b/task.sql index 7ded116..fc7c4a9 100644 --- a/task.sql +++ b/task.sql @@ -28,5 +28,6 @@ CREATE TABLE OrderItems ( ID INT AUTO_INCREMENT PRIMARY KEY, OrderID INT, ProductID INT, - FOREIGN KEY (OrderID) REFERENCES Orders(ID) ON DELETE SET NULL + FOREIGN KEY (OrderID) REFERENCES Orders(ID) ON DELETE SET NULL, + FOREIGN KEY (ProductID) REFERENCES Products(ID) ON DELETE SET NULL ) \ No newline at end of file