From 9ac27ee8d5fcf85ec7834207e3f61e6a7757f60f Mon Sep 17 00:00:00 2001 From: ThomasCode92 Date: Sat, 28 Oct 2023 15:39:01 +0200 Subject: [PATCH 1/5] Note about the Project --- .vscode/settings.json | 4 ++-- disclaimer.txt | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 disclaimer.txt diff --git a/.vscode/settings.json b/.vscode/settings.json index 375aedb..62fdbf9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -26,7 +26,7 @@ "port": 3306, "driver": "MySQL", "name": "mysql", - "database": "default", + "database": "gym", "username": "root", "askForPassword": true }, @@ -36,7 +36,7 @@ "port": 5432, "driver": "PostgreSQL", "name": "postgresql", - "database": "default", + "database": "gym", "username": "postgres", "askForPassword": true } diff --git a/disclaimer.txt b/disclaimer.txt new file mode 100644 index 0000000..9b90f5b --- /dev/null +++ b/disclaimer.txt @@ -0,0 +1,4 @@ +# Database + +The 'gym' database (created in section 6) will be used. +Make sure run the commands to create the tables and insert data. From bd6a7f2e555883bc1ed234e7dbb4e32013d7c2e0 Mon Sep 17 00:00:00 2001 From: ThomasCode92 Date: Sun, 29 Oct 2023 15:06:52 +0100 Subject: [PATCH 2/5] Applying Transactions & ROLLBACK --- data/01-transaction.sql | 0 data/01.1-start-transaction.sql | 1 + data/01.2-insert-customers.sql | 2 ++ data/01.3-insert-orders.sql | 2 ++ data/01.4-rollback.sql | 1 + 5 files changed, 6 insertions(+) create mode 100644 data/01-transaction.sql create mode 100644 data/01.1-start-transaction.sql create mode 100644 data/01.2-insert-customers.sql create mode 100644 data/01.3-insert-orders.sql create mode 100644 data/01.4-rollback.sql diff --git a/data/01-transaction.sql b/data/01-transaction.sql new file mode 100644 index 0000000..e69de29 diff --git a/data/01.1-start-transaction.sql b/data/01.1-start-transaction.sql new file mode 100644 index 0000000..dbe7c6a --- /dev/null +++ b/data/01.1-start-transaction.sql @@ -0,0 +1 @@ +START TRANSACTION; diff --git a/data/01.2-insert-customers.sql b/data/01.2-insert-customers.sql new file mode 100644 index 0000000..8761ac7 --- /dev/null +++ b/data/01.2-insert-customers.sql @@ -0,0 +1,2 @@ +INSERT INTO customers(first_name, last_name, email) +VALUES('Maria', 'Jones', 'maria@test.com'); diff --git a/data/01.3-insert-orders.sql b/data/01.3-insert-orders.sql new file mode 100644 index 0000000..6f098b7 --- /dev/null +++ b/data/01.3-insert-orders.sql @@ -0,0 +1,2 @@ +INSERT INTO orders(amount_billed, customer_id) +VALUES(103.12); diff --git a/data/01.4-rollback.sql b/data/01.4-rollback.sql new file mode 100644 index 0000000..3b18e77 --- /dev/null +++ b/data/01.4-rollback.sql @@ -0,0 +1 @@ +ROLLBACK; From 6c466a3523b79d489dff481a74074faade09f79f Mon Sep 17 00:00:00 2001 From: ThomasCode92 Date: Sun, 29 Oct 2023 15:08:44 +0100 Subject: [PATCH 3/5] Committing Changes --- data/01.5-commit.sql | 1 + 1 file changed, 1 insertion(+) create mode 100644 data/01.5-commit.sql diff --git a/data/01.5-commit.sql b/data/01.5-commit.sql new file mode 100644 index 0000000..87ef767 --- /dev/null +++ b/data/01.5-commit.sql @@ -0,0 +1 @@ +COMMIT; From 6037dbdd1baf8179976f8c150eac0fe81ed5b183 Mon Sep 17 00:00:00 2001 From: ThomasCode92 Date: Sun, 29 Oct 2023 15:08:49 +0100 Subject: [PATCH 4/5] Working with Savepoints --- data/01.2-insert-customers.sql | 2 ++ data/01.4-rollback.sql | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/data/01.2-insert-customers.sql b/data/01.2-insert-customers.sql index 8761ac7..48732d8 100644 --- a/data/01.2-insert-customers.sql +++ b/data/01.2-insert-customers.sql @@ -1,2 +1,4 @@ INSERT INTO customers(first_name, last_name, email) VALUES('Maria', 'Jones', 'maria@test.com'); + +SAVEPOINT save_1; diff --git a/data/01.4-rollback.sql b/data/01.4-rollback.sql index 3b18e77..0b174c5 100644 --- a/data/01.4-rollback.sql +++ b/data/01.4-rollback.sql @@ -1 +1 @@ -ROLLBACK; +ROLLBACK TO save_1; From e1e421be466dcdc70d0201bd9d625eeb063d5370 Mon Sep 17 00:00:00 2001 From: ThomasCode92 Date: Sun, 29 Oct 2023 15:11:18 +0100 Subject: [PATCH 5/5] Transactions in PostgreSQL --- data/01-transaction.sql | 1 + data/02-transaction.sql | 1 + data/02.1-start-transaction.sql | 1 + data/02.2-insert-customers.sql | 2 ++ data/02.3-insert-orders.sql | 2 ++ data/02.4-rollback.sql | 1 + data/02.5-commit.sql | 1 + 7 files changed, 9 insertions(+) create mode 100644 data/02-transaction.sql create mode 100644 data/02.1-start-transaction.sql create mode 100644 data/02.2-insert-customers.sql create mode 100644 data/02.3-insert-orders.sql create mode 100644 data/02.4-rollback.sql create mode 100644 data/02.5-commit.sql diff --git a/data/01-transaction.sql b/data/01-transaction.sql index e69de29..c43619c 100644 --- a/data/01-transaction.sql +++ b/data/01-transaction.sql @@ -0,0 +1 @@ +-- Transactions in MySQL diff --git a/data/02-transaction.sql b/data/02-transaction.sql new file mode 100644 index 0000000..520da95 --- /dev/null +++ b/data/02-transaction.sql @@ -0,0 +1 @@ +-- Transactions in PostgreSQL diff --git a/data/02.1-start-transaction.sql b/data/02.1-start-transaction.sql new file mode 100644 index 0000000..1775571 --- /dev/null +++ b/data/02.1-start-transaction.sql @@ -0,0 +1 @@ +BEGIN; diff --git a/data/02.2-insert-customers.sql b/data/02.2-insert-customers.sql new file mode 100644 index 0000000..8761ac7 --- /dev/null +++ b/data/02.2-insert-customers.sql @@ -0,0 +1,2 @@ +INSERT INTO customers(first_name, last_name, email) +VALUES('Maria', 'Jones', 'maria@test.com'); diff --git a/data/02.3-insert-orders.sql b/data/02.3-insert-orders.sql new file mode 100644 index 0000000..6f098b7 --- /dev/null +++ b/data/02.3-insert-orders.sql @@ -0,0 +1,2 @@ +INSERT INTO orders(amount_billed, customer_id) +VALUES(103.12); diff --git a/data/02.4-rollback.sql b/data/02.4-rollback.sql new file mode 100644 index 0000000..3b18e77 --- /dev/null +++ b/data/02.4-rollback.sql @@ -0,0 +1 @@ +ROLLBACK; diff --git a/data/02.5-commit.sql b/data/02.5-commit.sql new file mode 100644 index 0000000..87ef767 --- /dev/null +++ b/data/02.5-commit.sql @@ -0,0 +1 @@ +COMMIT;