Fachinformatiker - Oberstufe

Im Rahmen der Anwendungsentwicklung finden Sie hier einen 5 monatigen Kurs zu Datenstrukturen, Datenbankentwicklung, SQL, Migrationen und den Betriebsaspekten einer Datenbank. Es findet hier zunächst eine kurze Wiederholung von Unterrichtsinhalten aus der Unterstufe statt, die für die Prüfung unverzichtbar sind.

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. Testvorbereitungen zu Stadt-Land-Kontinent-Fluss (SLKF)
    Testaufgaben.
  5. Test zu Stadt-Land-Kontinent-Fluss (SLKF)
    Test&Lösungen.

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. Test zum JOIN über Beziehungstabellen
    Die beiden Tests (Gr 1, Gr 2), den Datenbestand, eine Datenmodellbeschreibung und den Lösungen (Gr 1, Gr 2).
  7. 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.
  8. 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.
  9. Ü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.
  10. Test zur Aggregation und SQL-Join
    Hier finden Sie zum Test Test den Datenbestand und das Datenmodell (hochauflösend) zur Videothek.
    Falls Sie eine Musterlösung bei der Nachbereitung benötigen, finden Sie hier sowohl das SQL, als auch die Antworten zu den Testfragen.

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

  1. Warenkorb als ein Beispiel für die Anwendung eines OUTER JOIN
    Warenkorb.
    Eine graphische Veranschaulichung zur Struktur von OUTER JOIN finden Sie hier.
  2. Übung zum OUTER JOIN II
    Die abschließende Übung zum OUTER JOIN: Arbeitsblatt.

Datenformate und Datenimporte
Die Relevanz des Datenbankunterrichts ist eng an die Datenverfügbarkeit gebunden. Hier wollen wir die gebräuchlichsten Datenaustauschformaten: CSV, XML und HTML betrachten, um Daten in einer Datenbanktabelle zur Verfügung zu stellen.

  1. Datenimport-XML
    Die Verwendung von XML als Datenformat für den Austausch von Daten und die Erstellung von Konfigurationsdateien hat sich durchgesetzt. Hier wollen wir die Schnittstelle zwischen Excel und XML betrachten: Arbeitsblatt
  2. Datenimport-CSV
    Zunächst wollen wir noch einmal eine Tabelle erstellen, bevor wir dann hier diese auf unterschiedliche Weisen mit Daten füllen: Arbeitsblatt
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. Übung zur referentiellen Integrität und Datenpflege III - Bankdaten
    Konto- und Adressdaten werden hier betrachtet Übung.
  5. Testvorbereitungen
    Eine Vorbereitung und Selbstevaluation für die kommende Klausur steht Ihnen hier zur Verfügung: Aufgaben.
    Mittlerweile finden Sie einige kommentierte Lösungsvorschläge zu den obigen Aufgaben.
  6. Klausur
    Hier finden Sie Ihre Klausuraufgaben: Aufgaben und Lösungen.

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
DB-Entwicklung
  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.
  5. 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.
  6. Ultimative Übungen zum ER-Modell
    Diese Übung ist ein Beispiel für die Modellierung einer kleineren Datenbank: Tageszeitung. Jetzt auch mit einer Musterlösung.
  7. Test zum ER-Modell
    Aufgaben und Lösungen
  8. 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.
  9. Beziehungen und deren Reichweite
    Ein weiterer Aspekt der Modellierung von Beziehungen in Bezug zu deren Grad wird hier betrachtet: sternartig oder linear.
  10. Datenbankmodelle - Übung I
    Die bisherigen Erfahrungen reichen aus, um nun ein größeres Modell zu behandeln. Was läge da näher als ein DB-Modell zu einem Krankenhaus.
  11. Datenbankmodelle - Übung II
    Wir arbeiten hier mit DB-Modellen zu einer Reederei und einem Online-Auktionshandel: Zwei Modellierungsaufgaben. Dazu finden Sie die passenden SQL-Aufgaben hier.
  12. Probeklausur 1
    Aufgaben aus einem der letzten Jahre mit Lösungen. Bitte lassen Sie das DB-Modell (Aufgabe 2) dabei heraus - das war erst in der letzten Stunde besprochen worden.
  13. Probeklausur 2
    Es müssen noch Aufgaben zur Datenbankmigrationen in die Klausur mit aufgenommen werden: Datenbankmigration&Co mit Lösungen.
    Das wird den Schwerpunkt der Klausur darstellen: (30% ER-Modell, 40% Migration, 20% SQL, 10% ungefährer Spielraum für einen der ersten drei Bereiche).
    Bitte in dieser zweiten Probeklausur die Aufgabe 1) nicht beachten, da wir das schon vor zwei Jahren gemacht haben.
    Bei Fragen, Anregungen oder Problemen - alles immer wieder gerne per Email, aber bitte nicht am letzten Tag vor der Klausur.
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. Anregungen zu Backup&Recovery
    Ein wichtiger Betriebsaspekt - die Verfügbarkeit nach Fehlersituationen: Backup&Recovery.
  6. Multiuser unter ACID-Anforderungen
    Einige weitere Eigenschaften von DBMS zur Unterstüzung eines Multiuserbetriebs werden hier vorgestellt: Transaktionen. Beachten Sie dazu diese Beispielskripte.
  7. 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.

Vertretungsmaterial

Hier finden Sie noch Klausuren der ITA, die für eine Vorbereitung auf Ihre Abschlussprüfung geeignet sind.

  1. Klausur 10-04-2018
    Hier finden Sie eine alte Klausur.
  2. Klausur 15-03-2019
    Hier finden Sie die aktuelle Klausur.