Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Datenbankpraktikum/Abschlusstest SoSe 2010: Unterschied zwischen den Versionen

K (hat „Datenbankpraktikum (DBPRA)/Abschlusstest SoSe 2010“ nach „Datenbankpraktikum/Abschlusstest SoSe 2010“ verschoben: Namingscheme violation of main page)
(eine Aufgabe Ergänzt)
Zeile 9: Zeile 9:
 
** Anzahl von irgendwas zurückgeben (irgendwas, wo JOIN, GROUP BY und COUNT benutzt werden musste)
 
** Anzahl von irgendwas zurückgeben (irgendwas, wo JOIN, GROUP BY und COUNT benutzt werden musste)
 
** Von Kunden, die in einem Zeitraum einen bestimmten Autotyp reserviert hatten, Vor- und Nachnamen durch ein Leerzeichen verbunden innerhalb einer Spalte; keine Duplikate (SELECT DISTINCT, String-Konktatenation, Joins, WHERE-Condition)
 
** Von Kunden, die in einem Zeitraum einen bestimmten Autotyp reserviert hatten, Vor- und Nachnamen durch ein Leerzeichen verbunden innerhalb einer Spalte; keine Duplikate (SELECT DISTINCT, String-Konktatenation, Joins, WHERE-Condition)
 +
* SQL-Abfrage lesen
 +
** Eine etwas größere SQL-Abfrage war gegeben. Das Ergebnis sollte in eine Tabelle eingetragen werden und (natürlichsprachlich) beschrieben werden. Sie enthielt verschiedene Joins (u.a. CROSS JOIN und LEFT OUTER JOIN), CASE-Anweisung und GROUP BY mit SUM-Aggregation. Sofern ich es richtig erkannt hatte, hat die Abfrage hat pro Filiale und Autoklasse den Umsatz zusammengerechnet. Der CASE war dazu da die NULLs des Outer-Joints durch "0.0" zu ersetzen, wenn für die entsprechende Kombination kein Umsatz vorlag.
 
* Views
 
* Views
 
** Wofür können Views verwendet werden?
 
** Wofür können Views verwendet werden?

Version vom 20. Juli 2010, 16:54 Uhr

Abschlusstest (19.07.2010) - Gedächtnisprotokoll ggf. ziemlich unvollständig

Es war als Tabellen ein Datenbankschema vorgegeben (Mietwagen-System: Tabellen Auto, Reservierung, Kunde, Rechnung, Filiale, ...)

  • DML
    • Ausdruck zum Erstellen der Tabelle Auto angeben (einschließlich Primärschlüssel, Fremdschlüssel und CHECK-Constraints)
    • Der Tabelle Auto eine Spalte und einen CHECK-Constraint hinzufügen.
  • SQL-Abfrage formulieren
    • Anzahl von irgendwas zurückgeben (irgendwas, wo JOIN, GROUP BY und COUNT benutzt werden musste)
    • Von Kunden, die in einem Zeitraum einen bestimmten Autotyp reserviert hatten, Vor- und Nachnamen durch ein Leerzeichen verbunden innerhalb einer Spalte; keine Duplikate (SELECT DISTINCT, String-Konktatenation, Joins, WHERE-Condition)
  • SQL-Abfrage lesen
    • Eine etwas größere SQL-Abfrage war gegeben. Das Ergebnis sollte in eine Tabelle eingetragen werden und (natürlichsprachlich) beschrieben werden. Sie enthielt verschiedene Joins (u.a. CROSS JOIN und LEFT OUTER JOIN), CASE-Anweisung und GROUP BY mit SUM-Aggregation. Sofern ich es richtig erkannt hatte, hat die Abfrage hat pro Filiale und Autoklasse den Umsatz zusammengerechnet. Der CASE war dazu da die NULLs des Outer-Joints durch "0.0" zu ersetzen, wenn für die entsprechende Kombination kein Umsatz vorlag.
  • Views
    • Wofür können Views verwendet werden?
    • Wie greift man auf Views zu?
  • Trigger (multiple Choice)
  • Indexes (multiple Choice)
  • Transaktionen
    • Es war ein Aktivitätsdiagramm gegeben bei dem dirty-read und non-repeatable-read Phänomene auftauchen konnten. Diese Probleme sollte man finden und beschreiben, wo sie auftreten.