From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- Bachelor/Datenbanken 2/Praktikum4/esql3.sql | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Bachelor/Datenbanken 2/Praktikum4/esql3.sql (limited to 'Bachelor/Datenbanken 2/Praktikum4/esql3.sql') diff --git a/Bachelor/Datenbanken 2/Praktikum4/esql3.sql b/Bachelor/Datenbanken 2/Praktikum4/esql3.sql new file mode 100644 index 0000000..bd2d1aa --- /dev/null +++ b/Bachelor/Datenbanken 2/Praktikum4/esql3.sql @@ -0,0 +1,32 @@ +-- als stored procedure mit Parameteruebergabe + +create or replace procedure neugehalt(proz1 number, proz2 number) +as + cursor c is select gehalt + from angestellter + for update of gehalt; + + v_gehalt angestellter.gehalt%type; + +-- Ausführungsblock +begin + -- Cursor öffnen + open c; + + -- erste Zeile lesen + fetch c into v_gehalt; + + -- alle Zeilen der Ergebnistabelle lesen + while c%found loop + if v_gehalt > 10000 + then update angestellter set gehalt = gehalt * proz1 + where current of c; + else update angestellter set gehalt = gehalt * proz2 + where current of c; + end if; + fetch c into v_gehalt; + end loop; + +end; +/ + -- cgit v1.2.3