From 7b0eeb1bf34e07a6fcea8b2419c1f5c63054dd1f Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 17:56:35 +0200 Subject: [PATCH 1/6] Solution 1.0.0 --- task.sql | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/task.sql b/task.sql index 8adf22b..3d7d125 100644 --- a/task.sql +++ b/task.sql @@ -1,11 +1,25 @@ -- Use our database USE ShopDB; --- Some data should be created outside the transaction (here) +INSERT INTO Orders (CustomerOD, Date); +VALUES (1, '2026-03-17'); -- Start the transaction START TRANSACTION; --- And some data should be created inside the transaction +SELECT id +INTO @order_id +FROM Orders +ORDER BY id DESC +LIMIT 1; + +SET @order_id = LAST_INSERT_ID(); + +INSERT INTO OrderItems(OrderID, ProductID, Count) +VALUE (@order_id, 1, 1); + +UPDATE Products +SET WarehouseAmount = WarehouseAmount - 1 +WHERE ID = 1; COMMIT; \ No newline at end of file From fc9d5ff4c88ee44fc5215c127cebb3ccf65e47e0 Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 18:01:26 +0200 Subject: [PATCH 2/6] Solution 1.1.0 --- task.sql | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/task.sql b/task.sql index 3d7d125..70d78e5 100644 --- a/task.sql +++ b/task.sql @@ -1,25 +1,22 @@ -- Use our database -USE ShopDB; +USE ShopDB; -INSERT INTO Orders (CustomerOD, Date); -VALUES (1, '2026-03-17'); +-- Some data should be created outside the transaction (here) --- Start the transaction -START TRANSACTION; +-- Start the transaction +START TRANSACTION; -SELECT id -INTO @order_id -FROM Orders -ORDER BY id DESC -LIMIT 1; +INSERT INTO Orders (CustomerID, Date) +VALUES (1, '2023-01-01'); SET @order_id = LAST_INSERT_ID(); -INSERT INTO OrderItems(OrderID, ProductID, Count) -VALUE (@order_id, 1, 1); +INSERT INTO OrderItems (OrderID, ProductID, Quantity) +VALUES (@order_id, 1, 1); UPDATE Products SET WarehouseAmount = WarehouseAmount - 1 WHERE ID = 1; -COMMIT; \ No newline at end of file +-- Commit transaction +COMMIT; \ No newline at end of file From 3a0b43511573afb0d994289882359ff0bd7f6d35 Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 18:09:13 +0200 Subject: [PATCH 3/6] Solution 2.0.0 --- task.sql | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/task.sql b/task.sql index 70d78e5..bbe694c 100644 --- a/task.sql +++ b/task.sql @@ -1,22 +1,15 @@ --- Use our database USE ShopDB; --- Some data should be created outside the transaction (here) - --- Start the transaction START TRANSACTION; INSERT INTO Orders (CustomerID, Date) VALUES (1, '2023-01-01'); -SET @order_id = LAST_INSERT_ID(); - -INSERT INTO OrderItems (OrderID, ProductID, Quantity) -VALUES (@order_id, 1, 1); +INSERT INTO OrderItems (OrderID, ProductID, Count) +VALUES (1, 1, 1); UPDATE Products SET WarehouseAmount = WarehouseAmount - 1 WHERE ID = 1; --- Commit transaction COMMIT; \ No newline at end of file From fb577856ddb44fe98326a6e370b099dd51c72ecc Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 18:12:42 +0200 Subject: [PATCH 4/6] Solution 2.1.0 --- task.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/task.sql b/task.sql index bbe694c..bfbb34f 100644 --- a/task.sql +++ b/task.sql @@ -1,10 +1,10 @@ USE ShopDB; -START TRANSACTION; - INSERT INTO Orders (CustomerID, Date) VALUES (1, '2023-01-01'); +START TRANSACTION; + INSERT INTO OrderItems (OrderID, ProductID, Count) VALUES (1, 1, 1); From d6fab5b4139e9284f5862cb21d95cb2a9de42296 Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 18:18:24 +0200 Subject: [PATCH 5/6] Solution 2.2.0 --- task.sql | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/task.sql b/task.sql index bfbb34f..2437f07 100644 --- a/task.sql +++ b/task.sql @@ -1,12 +1,14 @@ USE ShopDB; +START TRANSACTION; + INSERT INTO Orders (CustomerID, Date) VALUES (1, '2023-01-01'); -START TRANSACTION; +SET @order_id = LAST_INSERT_ID(); INSERT INTO OrderItems (OrderID, ProductID, Count) -VALUES (1, 1, 1); +VALUES (@order_id, 1, 1); UPDATE Products SET WarehouseAmount = WarehouseAmount - 1 From 4e3faab5e4d86e9ea19453c83bb2a857863d3f9e Mon Sep 17 00:00:00 2001 From: aisen Date: Tue, 17 Mar 2026 18:21:16 +0200 Subject: [PATCH 6/6] Solution 3.0.0 --- task.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/task.sql b/task.sql index 2437f07..2818097 100644 --- a/task.sql +++ b/task.sql @@ -1,12 +1,12 @@ USE ShopDB; -START TRANSACTION; - INSERT INTO Orders (CustomerID, Date) VALUES (1, '2023-01-01'); SET @order_id = LAST_INSERT_ID(); +START TRANSACTION; + INSERT INTO OrderItems (OrderID, ProductID, Count) VALUES (@order_id, 1, 1);