- Für dieses Aufgabenblatt wird die SQL-Dump-Datei
schema_default.sql
benötigt, die sich im Verzeichnissql
befindet. - Die SQL-Dump-Datei wird in SQL-Plus mittels
start <Dateipfad/zur/sql-dump-datei.sql>
in die Datenbank importiert. - Beispiele
- Linux
start ~/Tutorium.sql
- Windows
start C:\Users\max.mustermann\Desktop\Tutorium.sql
- Linux
Wo liegen die Vor- und Nachteile eines Trigger in Vergleich zu einer Prozedur?
Deine Lösung
Wo drin unterscheidet sich der Row Level Trigger
von einem Statement Trigger
?
Deine Lösung
Schaue dir den folgenden PL/SQL-Code an. Was macht er?
CREATE SEQUENCE seq_account_id
START WITH 1000
INCREMENT BY 1
MAXVALUE 99999999
CYCLE
CACHE 20;
CREATE OR REPLACE TRIGGER BIU_ACCOUNT
BEFORE INSERT OR UPDATE OF account_id ON account
FOR EACH ROW
DECLARE
BEGIN
IF UPDATING('account_id') THEN
RAISE_APPLICATION_ERROR(-20001, 'Die Account-ID darf nicht verändert oder frei gewählt werden!');
END IF;
IF INSERTING THEN
:NEW.account_id := seq_account_id.NEXTVAL;
END IF;
END;
/
Deine Lösung
Verbessere den Trigger aus Aufgabe 2 so, dass
- wenn versucht wird einen Datensatz mit
NULL
Werten zu füllen, die alten Wert für alle Spalten, die alsNOT NULL
gekennzeichnet sind, behalten bleiben. - es nicht möglich ist, das die Werte für
C_DATE
undU_DATE
in der Zukunkt liegen U_DATE
>=C_DATE
sein muss- der erste Buchstabe jedes Wortes im Vor- und Nachnamen groß geschrieben wird
- die Account-ID aus einer
SEQUENCE
entnommen wird
Nutze die Lösung der Aufgabe 2, Aufgabenblatt 8 um die Aufgabe zu lösen. Dort solltest du einige Hilfestellungen finden.
Deine Lösung
Angenommen der Steuersatz in Deutschland sinkt von 19% auf 17%.
- Aktualisiere den Steuersatz von Deutschland und
- alle Quittungen die nach dem
01.10.2017
gespeichert wurden.
Deine Lösung
Liste alle Hersteller auf, die LKW's produzieren und verknüpfe diese ggfl. mit den Eigentümern.
Deine Lösung