summaryrefslogtreecommitdiffstats
path: root/Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql
diff options
context:
space:
mode:
Diffstat (limited to 'Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql')
-rw-r--r--Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql25
1 files changed, 25 insertions, 0 deletions
diff --git a/Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql b/Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql
new file mode 100644
index 0000000..d252b1c
--- /dev/null
+++ b/Bachelor/Datenbanken 2/Praktikum4/assistenz_trigger.sql
@@ -0,0 +1,25 @@
+create or replace trigger ASSISTENZ_INSERT
+before insert on assistenz
+for each row
+
+declare
+ Eingabe_nicht_zulaessig exception;
+ pragma exception_init (Eingabe_nicht_zulaessig, -20001);
+
+ antwort integer;
+
+begin
+
+ antwort := pruef_operation(:new.persnr,:new.opnummer);
+
+ if antwort = 0
+ then raise Eingabe_nicht_zulaessig;
+ end if;
+
+ exception
+ when Eingabe_nicht_zulaessig then
+ raise_application_error
+ (-20001, 'Chirurg ' || :new.persnr || ' leitet diese Operation!');
+
+end;
+/