diff options
| author | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
|---|---|---|
| committer | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
| commit | 33613a85afc4b1481367fbe92a17ee59c240250b (patch) | |
| tree | 670b842326116b376b505ec2263878912fca97e2 /Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql | |
| download | Studium-master.tar.gz Studium-master.tar.bz2 | |
Diffstat (limited to 'Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql')
| -rw-r--r-- | Bachelor/Datenbanken 2/Praktikum5/ORDML_p5.sql | 82 |
1 files changed, 82 insertions, 0 deletions
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 |
