From b3cbd3875f10b739fe09427d2540e165b701871a Mon Sep 17 00:00:00 2001
From: Peter Gerwinski <peter.gerwinski@hs-bochum.de>
Date: Thu, 14 Dec 2023 09:37:47 +0100
Subject: [PATCH] =?UTF-8?q?Beispiele=207.12.2023:=20Korrektur=20der=20Einr?=
 =?UTF-8?q?=C3=BCckung?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 20231207/trigger-01.txt | 10 +++++++---
 20231207/trigger-03.txt | 10 ++++++----
 2 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/20231207/trigger-01.txt b/20231207/trigger-01.txt
index b47a7d9..25f505a 100644
--- a/20231207/trigger-01.txt
+++ b/20231207/trigger-01.txt
@@ -51,9 +51,13 @@ testdb-> ;
 FEHLER:  Syntaxfehler bei »if«
 ZEILE 2: if new.balance <> old.balance then
          ^
-testdb=> create function log_change () returns trigger language plpgsql as $$                begin if new.balance <> old.balance then                                                       insert into log_change (account_id, change, datetime) values (old.id, new.balance - old.balance, now ());
-end if;
-return new;
+testdb=> create function log_change () returns trigger language plpgsql as $$
+begin
+  if new.balance <> old.balance then
+    insert into log_change (account_id, change, datetime)
+           values (old.id, new.balance - old.balance, now ());
+  end if;
+  return new;
 end;
 $$
 ;
diff --git a/20231207/trigger-03.txt b/20231207/trigger-03.txt
index 0c307ff..6c266e6 100644
--- a/20231207/trigger-03.txt
+++ b/20231207/trigger-03.txt
@@ -10,10 +10,12 @@ FEHLER:  kann Funktion log_change() nicht löschen, weil andere Objekte davon ab
 DETAIL:  Trigger after_update_account für Tabelle account hängt von Funktion log_change() ab
 TIP:  Verwenden Sie DROP ... CASCADE, um die abhängigen Objekte ebenfalls zu löschen.
 testdb=> create or replace function log_change () returns trigger language plpgsql as $$
-begin if new.balance <> old.balance then
-  insert into account_log (account_id, change, datetime) values (old.id, new.balance - old.balance, now ());
-end if;
-return new;
+begin
+  if new.balance <> old.balance then
+    insert into account_log (account_id, change, datetime)
+           values (old.id, new.balance - old.balance, now ());
+  end if;
+  return new;
 end;
 $$
 ;
-- 
GitLab