Datenbankentwicklung

ITA - Informationstechnische Assistenten in der Oberstufe

In der Oberstufe beginnen wir mit einer Wiederholung zum Outer-Join und zur Datenqualität. Anschließend werden wir die Datenmodellierung, Datenbankmigrationen und Betriebsaspekte einer Datnebank betrachten.
Hier finden Sie die DB-Unterrichtsmaterialien zur ITA-Ausbildung in der Oberstufe. Wir beginnen mit einer Wiederholung.

Wiederholung - Einfache Select-Anweisungen
Wir beginnen hier mit einer Übersicht zu den einfachen SQL-Themen aus der Unterstufe.

  1. Select-Anweisungen
    Das SELECT, als der wichtigste SQL-Befehl, wird in dieser Unterrichtseinheit vorgestellt und eingeübt. Dazu finden Sie auch eine ganz kurze Einführung im Rahmen einer graphischen Darstellung. Zu den obigen Übungen finden Sie hier eine Anleitung in Form eines Lückentextes, der für den Anfang verwendet werden sollte.
  2. Select-Anweisungen mit Aggregationsfunktionen
    Eine wichtige Funktion der Datenbank ist es Zusammenfassungen (Aggregationen) zu berechnen: Summen, Mittelwerte, Maximale Werte oder die Anzahl von Einträgen in einer Tabellenspalte zu bestimmen. Dazu finden Sie hier das entsprechende Arbeitsblatt. Auch gibt es dazu eine Anleitung in Form eines Lückentextes.
    Da wir nach der letzten Übung die Aggregationsfunktionen in der Select-Anweisungen verwenden können, sollten wir noch einmal einen Blick auf den Datenbestand zum Musikvertrieb werfen und einige SELECT-Anweisungen besser (vollständiger) formulieren. Dazu finden Sie hier weitere Aufgaben zum Musikvertrieb. Dazu gibt es eine Anleitung in Form eines Lückentextes
  3. Freistil SQL
    Nun haben Sie schon einige Aggregationsfunktionen in SELECT-Anweisungen verwendet und dabei hoffentlich mit Lückentexten eine Lösung zu den Fragestellungen finden können. Betrachten Sie nun eine vertraute Tabelle, um SQL ganz ohne Hilfestellungen zu schreiben. Dazu erhalten Sie hier das folgende Arbeitsblatt.
  4. Aufgaben zur Selbstevaluation:
    Stadt-Land-Kontinent-Fluss (SLKF).

Wiederholung - Tabellenverbund (JOIN)
Es folgt hier eine Übersicht zum INNER-JOIN, zur Datenintegrität und OUTER-JOIN aus der Unterstufe.

  1. Der Verbund von Tabellen in SQL (JOIN)
    Die wichtigste Funktion der Datenbank ist das Zusammenführen und Abgleichen von Informationen. Es wird hier eine Einführung zur Erstellung eines SQL-Joins gegeben.
  2. JOIN über Beziehungstabellen
    Relationale Datenbanken stellen jegliche Information in Tabellen dar. Dazu gehören auch Informationen über Beziehungen zwischen Objekten. Wenn z.B. eine Person ein Auto kauft, so enthält der Kauf an sich Attribute, wie z.B. ein Kaufdatum. Daher werden solche Attribute in eigenständigen "Beziehungs"-Tabellen gespeichert. Wir nutzen hier diese Beziehungstabellen, um einerseits den SQL-Join weiter einzuüben, aber uns auch in die relationale Denkweise einzufinden. Dazu finden Sie hier das entsprechende Arbeitsblatt.
  3. Übungen zum JOIN über Beziehungstabellen
    Es folgen hier Übungen zu einem Stadt-Land-Fluss Datenbestand. Datenmodellbeschreibungen, Daten, Fragestellungen und eine Hilfestellung als Lückentext finden Sie hier.
  4. Weitere Übungen zum JOIN über Beziehungstabellen
    Das bekannte Stadt-Land-Fluss Datenmodell wird hier erweitert um Grenzländer und Städte, die an Flüssen liegen. Diese letzte Übung zum SQL-Join erfordert schon sehr viel Erfahrung im Umgang mit dem SQL-Join und dem Datenmodell. Mittlerweile gibt es hier einen Lückentext und einen frischen Datenimport.
  5. Vorbereitung auf Test zum JOIN über Beziehungstabellen
    Als Vorbereitung auf den kommenden Test finden Sie hier einen Probetest, eine Datenmodellbeschreibung und den Datenbestand dazu.
  6. Das Zusammenfassen und Gruppieren von Daten ist eine wesentliche Aufgabe einer Datenbank. Hier finden Sie eine Einführung der GROUP BY-Anweisung. Eine ausführliche Übung wird Ihnen hier dazu angeboten. Mittlerweile finden Sie zu den Fragestellungen der all_time_chart einen Lückentext.
  7. Musikduett (Übung zur Aggregation und SQL-Join)
    Wir verwenden hier wieder ein Datenmodell, das sich an der Popmusik ausrichtet und schlie├čen damit die Übungen zum GROUP BY ab.
  8. Übung zur Aggregation und SQL-Join
    Wir verwenden hier ein Datenmodell einer Videothek, welches auch bei MySQL-Schulungen verwendet wird. Hier finden Sie weiter eine Darstellung des Datenmodells, die Daten und die Aufgabenstellungen.
  9. Test zur Aggregation und SQL-Join
    Hier finden Sie zum Test Test den Datenbestand und das Datenmodell (hochauflösend) zur Videothek.

Wiederholung zur Datenintegrität und OUTER-JOIN

  1. Datenintegrität
    Hier finden Sie ein Arbeitsblatt zur Integrität von Daten.
  2. Weitere SQL-Befehle, OUTER JOIN
    Hier finden Sie einige wichtige noch fehlende SQL-Anweisungen, insbesondere den LEFT/RIGHT OUTER JOIN. Der OUTER JOIN ist ein geeignetes Hilfsmittel, um die Integrität von Datenbeständen zu untersuchen, aber ist auch wichtig, um fachliche Fragestellungen zu beantworten. Hierzu finden Sie das entsprechende Arbeitsblatt. Vielleicht benötigen Sie noch eine Beschreibung zu diesem hier verwendeten Datenmodell, welches auch in Schulungen von MySQL verwendet wird. Hier finden Sie noch eine Veranschaulichung zu einem geschachtelten OUTER-JOIN.
  3. Übungen zum OUTER JOIN
    Hier geht es um eine Schuldatenbank mit fehlerhaften Daten. In dieser Übung sollen Sie mit einem OUTER JOIN solche Fehler finden.
  4. Warenkorb als ein Beispiel für die Anwendung eines OUTER JOIN
    Warenkorb

Subselect, Datenintegrität und Datenpflege

  1. Unterabfragen
    Verschachtelte (korrelierte) Unterabfragen bieten eine Möglichkeit, um komplexe Fragestellungen zu betrachten.
  2. Referentielle Integrität und Datenpflege
    Hier geht es um eine typische Datenbereinigung, wie sie bei jeder DB-Migration anfällt.
  3. Referentielle Integrität und Datenpflege II
    Hier geht es um eine lächerlich kleine Funkzellenüberwachung, die im Jahr 2011 der Aufreger war.
  4. Testvorbereitungen jetzt mit Lösungen
    Eine Vorbereitung und Selbstevaluation steht Ihnen hier zur Verfügung: Aufgaben.

Normalisierungen und SQL-Funktionen

  1. Die ersten drei Normalformen
    Hier finden Sie einen Überblick zu den ersten drei Normalformen, wobei besonderer Wert auf eine anschauliche Darstellung gelegt wird.
  2. Es werden hier verschiedene Datentransformationen betrachtet, wobei das Erreichen oder der Erhalt einer normalisierten Datenbankstruktur unser Leitmotiv sein wird:
    1. Auf dem Weg zur ersten Normalform.
    2. Auf dem Weg zur zweiten Normalform.
    3. Auf dem Weg zur dritten Normalform.
  3. Übung zum Auslagern von Katalogen und Zwischentabellen
    Auslagern in eine Katalogtabelle: Aufgabenblatt Topfilme
  4. Übung zum Auslagern von Katalogen und Zwischentabellen II
    Testvorbereitungen Musikduett
  5. Übung zum Auslagern von Katalogen und Zwischentabellen III
    Testvorbereitungen Stadt-Land-Kontinent
  6. Probeklausur zur Integrität und Datentransformation - BFIT6AB 26.11.2018
    Hier finden Sie eine Probeklausur zur Integrität und Datentransformation.
  7. Hier finden Sie die Klausur der BFIT5A vom 9.1.2018 jetzt mit Lösungen:
    Klausur BFIT5A und eine Musterlösung.

Wiederholung zur DB-Anwendungsentwicklung, Normalformen

  1. Mikrodesign - die etwas kleinere Übung
    Hier finden Sie sinnvolle Bausteine zur Modellierung von Datenbanken mit Lösungen
  2. Mikrodesign II - wegen des großen Erfolgs verlängert
    Diese kleinen Problemstellungen sollen den Einstieg erleichtern und genügend Beispiele für den Entwurf eigener Datenbankmodelle liefern: Modellierung von Datenbanken II mit Lösungen.
  3. Mikrodesign III - Alles hat einmal klein angefangen
    Mikromodellierungen können die nötige Sicherheit geben, um umfangreichere Aufgaben zu lösen. Modellierung von Datenbanken III
  4. Normalformen eines Datenbankmodells
    Die klassichen drei Normalformen werden hier dargestellt.
  5. Modellierung einer Online-Apotheke: Neusser Apotheke

DB-Entwicklung

Die ersten Ansätze zur Datenbankerstellung werden hier etwas abstrakter und allgemeiner betrachtet

  1. Struktur einer Datenbank
    Es werden hier die Funktionen und Erfordernisse einer Datenbank in einer IT-Anwendung betrachtet. Die Funktion, die Datenbanken in unserer Informationsgesellschaft übernehmen wird dazu auch beleuchtet. Das Unterrichtsmaterial finden Sie dazu hier.
  2. DB-Entwicklung und Projektabläufe
    Es werden hier Methoden und Werkzeuge der DB-Entwicklung vorgestellt. Ein wesentlicher Punkt ist, dass hierbei ein use case, ein ER-Modell oder ein DB-Modell als Teil eines Entwicklungsprozesses gesehen werden sollen.
  3. ER-Modell
    Die Bezeichnungen eines ER-Modells und die Symbole und Notationen in einem ER-Diagramm werden in dieser Unterrichtseinheit behandelt. Die Modellierung von is-a-Beziehungen soll hier an einem Beispiel betrachtet werden.
  4. Übungen zum ER-Modell
    Hier werden Ihnen kleine Modellierungsaufgaben vorgestellt, in denen einzelne Aspekte der Modellierung betrachtet werden. Bitte beachten Sie jetzt auch die Musterlösung dazu.
  5. Test zum ER-Modell
    Der erste Test nach Einführung der ER-Modelle: Aufgabenstellung
  6. Übungen zum ER-Modell: vom Konkreten zum Abstrakten
    Hier scheuen wir uns ein Datenbestand an und ein passendes DB-Modell. Als kleine Übung wollen wir aus einem DB-Modell ein ER-Modell erstellen: Aufgaben A mit DB-Modellen A
    Aufgaben B
  7. Weitere Übungen zum ER-Modell
    Diese Übung dient der Einführung in die Modellierung von anspruchsvolleren Datenbanken: Apotheken-App. Jetzt auch mit einer Musterlösung.
  8. Noch mehr Übungen zum ER-Modell
    Hier finden Sie die Klausur zum Hausdienst und entsprechende Daten.
    Die Lösung zum ER-Modell, DB-Modell, SQL-Anweisungen beachten Sie bitte erst später.
  9. Der Test zum ER-Modell
    Hier soll nun ein Neusser Transportunternehmer in einem ER-Modell dargestellt werden und der Hausdienstleister ist als DB-Modell zu erstellen. Hausdienst und entsprechende Daten.
    Die Lösung zum ER-Modell, DB-Modell, SQL-Anweisungen beachten Sie bitte erst später.
  10. Beziehungen in einer relationalen DB
    Hier finden Sie einige Hinweise zur Umsetzung einer Beziehung in einer relationalen Datenbank in Abhängigkeit von deren Kardinalität.
  11. Mit und ohne is-a-Beziehungen
    Man muss nicht immer mit einer is-a-Beziehung das ER-Modell aufbauen, aber man hat die Möglichkeit dies zu tun. Welche Unterschiede sich dabei in der Darstellung ergeben, soll hier an einem Beispiel (Gartencenter) betrachtet werden.
    Nach einem eigenen Modellierungsversuch in Aufgabe 1) finden Sie hier zwei mögliche ER-Modelllösungen, wobei die Lösungen einmal ohne is-a-Beziehungen und einmal mit is-a-Beziehungen erstellt wurden.

Betriebsaspekte

  1. Performance - Indizes
    Datenbanken sind auf eine ausreichende Performance angewiesen, sonst findet die Anwendung nicht die Akzeptanz der Anwender. Daher ist es absolut notwendig, die Arbeitsweise von Indices zu verstehen und sie angesmessen pflegen zu können. Indices - eine Übersicht.
  2. Einfache Anwenderberechtigungen
    Hier finden Sie eine Einführung zu Anwenderberechtigungen.
  3. Datenbankprozeduren - ein erster Überblick
    Wir haben schon vordefinierte Funktionen in der Datenbank kennengelernt, als wir Zeichenketten im Rahmen von Migrationen verarbeitet haben. Darüber hinaus bietet die DB die Möglichkeit, auch user defined function (UDF) zu erstellen. Eine kurze Einführung und eine Anleitung zur Erstellung eigener DB-Funktionen finden Sie in diesem Arbeitsblatt.
  4. Datensicherheit und Migrationsaspekte - Views
    Datensicherheit und Datensatzberechtigungen werden hier mit Views umgesetzt.
  5. Test zu Betriebsaspekten
    Hier finden Sie einen kleinen Überblick zu möglichen Testfragen.
  6. Anregungen zu Backup&Recovery
    Ein wichtiger Betriebsaspekt - die Verfügbarkeit nach Fehlersituationen: Backup&Recovery.
  7. Transaktionen und Multiuser unter ACID-Anforderungen
    Einige weitere Eigenschaften von DBMS zur Unterstüzung eines Multiuserbetriebs werden hier vorgestellt: Transaktionen. Beachten Sie dazu diese Beispielskripte.
  8. Datensicherheit und Performance durch Prepared Statements
    Die Sicherheit der Nutzer- und Stammdaten einer Anwendung besitzt oberste Priorität. Ein Mittel diese Sicherheit zu erreichen wird hier vorgestellt: Prepared Statements.

Vorbereitungen

  1. Alte Klausuren
    Eine Reihe von Klausuren zu einfachen Joins und Gruppierungen:
    Aufgaben A, Aufgaben B, Aufgaben C, Aufgaben D.
    Beachten Sie dazu das Datenmodell.
    Mittlerweile finden Sie hier Musterlösungen dazu: Lösungen A, Lösungen B, Lösungen C, Lösungen D.
  2. Einen guten Überblick zu allen SQL-Befehlen erhalten Sie in der folgenden Vorbereitung Aufgaben.
  3. Ein Blick zurück auf Ihre alte Klausur lohnt sich auf jeden Fall: Klausur A mit Lösung A und Klausur B mit Lösung B
  4. Eine Schritt für Schritt Einführung zur PHP-Programmierung finden Sie in den angebotenen Lösungen zum Spielplan der Weltmeisterschaft 2018: WM 2018.
    Hier finden Sie eine Anleitung zur Lösung der Aufgaben.
  5. Eine Wiederholung zu PHP
    Hier finden Sie eine gut strukturierte einfache Wiederholung als Einstieg in die Vorbereitung: Rezeptbuch.
  6. Petsweb
    Diese Vorbereitung umfasst viele der bisherigen Themen zur Anwendungsentwicklung: Petsweb.
  7. VideoWorld
    Dies ist eine weitere allgemeine Vorbereitung zu den bisherigen Themen der Anwendungsentwicklung: MyVideoWorld.
  8. Klausurvorbereitung
    Hier kommt noch einmal eine Zusammenfassung und Ankündigung zu den Klausurinhalten: Optimale Vorbereitung.
  9. Klausur 10-04-2018
    Hier finden Sie eine alte Klausur und eine Musterlösung.
  10. Klausur 15-03-2019
    Hier finden Sie die aktuelle Klausur und eine Musterlösung.