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/Praktikum5/ORDML_p5.sql | 82 ++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql (limited to 'Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql') diff --git a/Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql b/Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql new file mode 100644 index 0000000..fb0c6e4 --- /dev/null +++ b/Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql @@ -0,0 +1,82 @@ +-- Firma 1 (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (123,'A-Firma', + Typ_Adresse(65432,'A-Stadt','B-Weg','17'), + 150 + ); +-- Firma 1a (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (124,'A1-Firma', + Typ_Adresse(76543,'B-Stadt','C-Str','25'), + 20 + ); +-- Firma 1b (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (125,'A2-Firma', + Typ_Adresse(87654,'C-Stadt','D-Weg','33'), + 30 + ); + +-- Firma 2 (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (234,'B-Firma', + Typ_Adresse(12345,'Z-Stadt','X-Str','87'), + 100 + ); +-- Firma 2a (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (235,'B1-Firma', + Typ_Adresse(23456,'Y-Stadt','Y-Weg','92'), + 10 + ); + +-- Firma 3 (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (345,'C-Firma', + Typ_Adresse(12345,'Z-Stadt','Y-Str','55'), + 200 + ); +-- Firma 3a (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (346,'C1-Firma', + Typ_Adresse(76543,'B-Stadt','D-Str','88'), + 135 + ); +-- Firma 3b (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (347,'C2-Firma', + Typ_Adresse(12345,'Z-Stadt','X-Weg','66'), + 50 + ); +-- Firma 3c (ohne Firmenreferenzen) +INSERT INTO T_Firma (RegNr,Name,Adresse,Umsatz) +VALUES (348,'C2-Firma', + Typ_Adresse(65432,'A-Stadt','A-Str','12'), + 15 + ); +-- + +UPDATE T_Firma Subunternehmen f +SET f.Subunternehmen = CAST ( MULTISET + (SELECT REF(f2) + FROM T_Firma f2 + WHERE f2.RegNr = 124 OR f2.RegNr=125)) AS Typ_FirmaTab) +WHERE RegNr=123; + +UPDATE T_Firma Subunternehmen f +SET f.Subunternehmen = CAST ( MULTISET + (SELECT REF(f2) + FROM T_Firma f2 + WHERE f2.RegNr = 235)) AS Typ_FirmaTab) +WHERE RegNr=234; + +UPDATE T_Firma Subunternehmen f +SET f.Subunternehmen = CAST ( MULTISET + (SELECT REF(f2) + FROM T_Firma f2 + WHERE f2.RegNr = 346 OR f2.RegNr=347 OR f2.RegNr=348)) AS Typ_FirmaTab) +WHERE RegNr=345; + +-- Verwendung der Methode Last_Bestellung als Spaltenfunktion +--select k.KNr, k.Last_Bestellung() +--from T_Kunde k; \ No newline at end of file -- cgit v1.2.3