Datenbankpraktikum/Abschlusstest SoSe 2010
< Datenbankpraktikum
Version vom 24. Juli 2010, 09:58 Uhr von 92.225.101.69 (Diskussion)
Abschlusstest (19.07.2010) - Gedächtnisprotokoll ggf. ziemlich unvollständig; keine Hilfsmittel waren zugelassen
Es war als Tabellen ein Datenbankschema vorgegeben (Mietwagen-System: Tabellen Auto, Reservierung, Kunde, Rechnung, Filiale, ...)
- DDL
- 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-Joins 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.