faecher:informatik:oberstufe:datenbanken:nm_beziehungen:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung
faecher:informatik:oberstufe:datenbanken:nm_beziehungen:start [25.11.2020 21:44] sbelfaecher:informatik:oberstufe:datenbanken:nm_beziehungen:start [08.12.2020 08:34] sbel
Zeile 1: Zeile 1:
 ====== n-m Beziehungen ====== ====== n-m Beziehungen ======
  
-In normalisierten Datenbanklen kommen häufig "Beziehungstabellen" zum Einsatz, welche die Verbindung zwischen den Entitäten herstellen. n-m-Beziehungen benötigen immer eine solche Beziehungstabelle.+In normalisierten Datenbanken kommen häufig "Beziehungstabellen" zum Einsatz, welche die Verbindung zwischen den Entitäten 
 +herstellen. **n-m-Beziehungen benötigen immer eine solche Beziehungstabelle**.
  
-Importiere für die folgenden Übungen die Tabellen der normalisierte Zahnarztbedarfsdatenbank in deine Übungsdatenbank. ({{ :faecher:informatik:oberstufe:datenbanken:nm_beziehungen:zahnarztbedarf_2nf.zip |}})+===== Beispiel =====
  
----- 
 {{:aufgabe.png?nolink  |}} {{:aufgabe.png?nolink  |}}
 === (A1) === === (A1) ===
  
-Erstelle ein ER-Diagramm für die Datenbank.+{{ :faecher:informatik:oberstufe:datenbanken:nm_beziehungen:erfilme.png |}}
  
  
 +{{ :faecher:informatik:oberstufe:datenbanken:nm_beziehungen:tabellen.png?400 |}}
  
 +
 +Die Struktur der Beziehungstabelle sieht so aus:
 +
 +''schauspieler_film(__sfid__, sid↑ , fid↑)''
 +
 +Eine kurze Recherche ergibt (unter anderem), dass Meg Ryan in "Harry And Sally" mitspielt. Um diese Beziehung abzubilden, muss in unserer schauspieler_film-tabelle eie Zeile der Form 
 +
 +^ id  ^ sid  | fid  |
 +| 1   | 2    | 4    |
 +  <id>,4,2
 +
 +eingefügt werden. 
 +
 + 
 ---- ----
 +Importiere für die folgenden Übungen die Tabellen der normalisierte Zahnarztbedarfsdatenbank in deine Übungsdatenbank. ({{ :faecher:informatik:oberstufe:datenbanken:nm_beziehungen:zahnarztbedarf_2nf.zip |}})
 +
 {{:aufgabe.png?nolink  |}} {{:aufgabe.png?nolink  |}}
 === (A2) === === (A2) ===
  
-  * Gib ein SQL-Statement an, das alle Produkte der Firma  mit Hilfe des Filters ''WHERE hersteller.firma = 'Eisen Karl' '' auflistet((Du sollst also nicht "von Hand" zuerst die Hersteller ID nachschauen...)). +Erstelle ein ER-Diagramm für die Datenbank. 
-  Gib ein SQL-Statement an, das alle Bestellungen von Viktoria auflistet. + 
-  Gib ein SQL-Statement an, das den Rechnungsbetrag von Dr. Blutgesicht ausgibt.+ 
 +---- 
 +{{:aufgabe.png?nolink  |}} 
 +=== (A3) === 
 + 
 +  - Gib ein SQL-Statement an, das alle Produkte der Firma  mit Hilfe des Filters ''WHERE hersteller.firma = 'Eisen Karl' '' auflistet((Du sollst also nicht "von Hand" zuerst die Hersteller ID nachschauen...)). 
 +  Gib ein SQL-Statement an, das alle Bestellungen von Viktoria auflistet. 
 +  Gib ein SQL-Statement an, das den Rechnungsbetrag von Dr. Blutgesicht ausgibt. 
 +  - Gib ein SQL-Statement an, das alle Doktoren ausgibt, die Zement gekauft haben 
 +  - Gib ein SQL-Statement an, deren Rechnungsbetrag über 12EUR liegt
  
  
Zeile 34: Zeile 60:
  
 ++++ ++++
-++++ Lösung |+ 
 +++++ Lösung |
 <code sql> <code sql>
 SELECT * FROM hersteller,doktoren, produkte, bestellungen  SELECT * FROM hersteller,doktoren, produkte, bestellungen 
Zeile 54: Zeile 81:
 ++++ ++++
  
 +++++ Lösung 5 | 
 +<code sql> 
 +SELECT sum(preis*anzahl) AS rechnung, doktoren.name FROM hersteller,doktoren, produkte, bestellungen  
 +WHERE bestellungen.produkt_id = produkte.id 
 +AND bestellungen.doktor_id = doktoren.id 
 +AND bestellungen.hersteller_id = hersteller.id 
 +GROUP BY doktoren.name 
 +HAVING rechnung >12 
 +</code> 
 +++++
  
 ---- ----
  • faecher/informatik/oberstufe/datenbanken/nm_beziehungen/start.txt
  • Zuletzt geändert: 11.11.2022 11:47
  • von Frank Schiebel