Fachinformatiker - Mittelstufe BSIT2AB

Im Rahmen der Anwendungsentwicklung finden Sie hier einen Kurs zu Datenstrukturen, Datenbankentwicklung, SQL, Datenbankprozeduren, Datenbankmigrationen und den vielfätigen Betriebsaspekten einer Datenbank: Datensicherheit, Performance, Backup&Recovery. Es findet hier zunächst eine kurze Wiederholung von Unterrichtsinhalten aus der Unterstufe statt, die für die Vorbereitung der ersten neuen Unterrichtsinhalte 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. Testvorbereitungen zu Stadt-Land-Kontinent-Fluss (SLKF)
    Testaufgaben.
  3. Test zu Stadt-Land-Kontinent-Fluss (SLKF)
    Hier finden Sie einen weiteren Test für eine eigenständige Wiederholung: Test&Lösungen.

Wiederholung - Tabellenverbund (JOIN)
Es folgt hier eine Übersicht zum INNER-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.
    Dazu finden Sie auch eine graphische Darstellung.
  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. 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.
  4. Vorbereitung auf den Test zum JOIN über Beziehungstabellen
    Als Vorbereitung auf den kommenden Test finden Sie hier einen Probetest, eine Datenmodellbeschreibung und den Datenbestand und eine Lösung.
  5. Test zum JOIN über Beziehungstabellen
    Hier finden Sie eine Serie von Tests zu Stadt-Land-Kontinent-Fluss:
    Test Gr A, Test Gr B, Test Gr C, Test Gr D, Test Gr E, Test Gr F

Wiederholung - Aggregation (GROUP BY)
Es folgt hier eine Wiederholung zum GROUP BY aus der Unterstufe, die natürlich den zuvor geübten JOIN mit einbezieht.

  1. 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.
  2. Übung und Test 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.
  3. Tests aus den letzten Jahren zur Aggregation und SQL-Join I
    1. Die Tests vom 2020-09-04 finden Sie hier: Test A, Test B
    2. Die Tests vom 2020-09-11 finden Sie hier: Test A, Test B,
    3. Die Tests vom 2021-09-17 finden Sie hier: Test A, Test B,
    4. Arbeitszeiterfassung mit JOIN und GROUP BY
      Eine weitere Übung zum Thema Arbeitszeiterfassung: Arbeitsblatt mit einer Lösungsangabe.
    5. SQL im Rückwärtsgang
      Zu gegeben SQL-Anweisungen soll eine Funktionalität im Rahmen eines Multiple-Choice-Test bestimmt werden: Test Jeoperdy
    6. SQL im Rückwärtsgang - Teil II
      Zu gegeben SQL-Anweisungen soll eine Funktionalität im Rahmen eines Single-Choice-Test bestimmt werden: Version A (Lösung) und Version B zwar ohne Lösung aber die Version B enthält die selben Auswahlmöglichkeiten.
  4. Einbettung von SQL in eine Applikation:
    Die Fußballweltmeisterschaft 2018 soll mit ihren Spielstätten dargestellt werden: WM 2018.
    Dazu gibt es hier eine Aufgabenstellung und eine schrittweise Anleitung.
  5. Testblock zu SELECT, JOIN, GROUP BY
    Thematisch betrachten wir die Ergebnisse und Statistiken zur Bundestagswahl 2021. Es handelt sich um eine aufwendige Datenanalyse, die wichtige Informationen aus den Daten herausarbeitet. Dabei ist es grundsätzlich egal, ob es sich um Kundendaten, Produktionsdaten oder eben wie hier um Wahlergebnisse handelt.
    Sie kennen schon dazu das folgende SQL-Arbeitsblatt mit einer Erläuterung zu den PHP-Skripten.
    Für die darin enthaltenen Datensammlungen und das Kartenmaterial beachten Sie das Copyright des statistischen Bundesamtes und des Bundeswahlleiters.
    Testvorbereitung I zur BTW21, Testvorbereitung II zur BTW21

Datenpflege und OUTER JOIN
Es folgt hier eine Übersicht zum INNER-JOIN, zur Datenintegrität und OUTER-JOIN:

  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
    Die abschließende Übung zum OUTER JOIN: Arbeitsblatt jetzt mit Musterlösung.
  3. Übung zum OUTER-JOIN II
    Betrachten Sie eine Flug-Hotel-Auto-Vermietung: Aufgaben.
    Dazu gehört ein Test nur mit den reinen Lösungsangaben aber auch eine Angabe aller ausführlichen und kommentierten SQL-Lösungen zu dem obigen Aufgabenblatt und Test.
  4. Klausurvorbereitungen zum GROUP BY und OUTER JOIN III
    Betrachten Sie mit einem leicht erweiterten Datenmodell die Flug-Hotel-Auto-Vermietung: Aufgaben und Lösungen
  5. Klausurvorbereitungen zum GROUP BY und OUTER JOIN IV
    Wir betrachten hier ein Datenmodell zu Verkehrsunfällen und deren Begutachtung als weitere Vorbereitung auf die kommende Klausur: Aufgaben zwar mit einer Musterlösung, aber die Daten sind nicht so schön bzw. passend. Daher biete ich Ihnen eine neue Datenladung dazu an.
  6. Klausur zum GROUP BY und OUTER JOIN
    Wir betrachten wieder das Datenmodell zu Verkehrsunfällen und deren Begutachtung in der Klausur: BSIT2A Aufgaben mit einer Lösung und BSIT2B Aufgaben mit einer Lösung.
    Hier finden Sie auch noch einige Erläuterungen zu den Lösungen.
  7. Datenintegrität
    Jetzt kommt der theoretische Rahmen zu der Datenintegrität - hier finden Sie ein Arbeitsblatt dazu.
  8. Selbstevaluation zur Integrität einer Datenbank
    Aufgaben und Fragestellungen
  9. Für den aktuellen Testzyklus zum OUTER JOIN und Fremdschlüsseln finden Sie hier zwei Testvorbereitungen Version A und Version B.

Datenpflege und Unterabfragen
Hier geht es um Datenpflege mit anderen Mitteln: Die obigen Ansätze einer Datenkosmetik werden um die Möglichkeiten einer allgemeinen Unterabfrage erweitert. Das nenn ich dann wirklich Datenpflege.

  1. Referentielle Integrität und Datenpflege
    Hier geht es um eine typische Datenbereinigung, wie sie bei jeder DB-Migration anfällt. Zur obigen Aufgabenstellung 5) finden Sie hier eine Musterlösung.
  2. Alte Klausurvorbereitungen 2019
    Eine Vorbereitung und Selbstevaluation für die kommende Klausur steht Ihnen hier zur Verfügung: Aufgaben.
  3. Unterabfragen
    Verschachtelte (korrelierte) Unterabfragen bieten eine Möglichkeit, um komplexe Fragestellungen zu betrachten.
    Noch mehr Aufgaben zu GROUP BY und Subselect
  4. Übungen zu Unterabfragen, OUTER JOIN und GROUP BY
    Bei den Flugbuchungen betrachten wir alle bisherigen SQL-Sprachelement im Vergleich: Unterabfragen
  5. Übung zur referentiellen Integrität und Datenpflege - Bankdaten
    Konto- und Adressdaten werden hier betrachtet Übung.
  6. Klausurvorbereitungen
    OUTER JOIN & Subselect mit Lösungen und
    Datenbereinigungen mit Lösungen.
  7. Eine alte Klausur aus dem Jahr 2018
    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
  6. Abschließender Test zu Datenmigrationen
    Test A, Test B
  7. Alte Probeklausur zur Integrität und Datentransformation - BSIT5AB 17.11.2017
    Hier finden Sie eine Klausur zur Integrität und Datentransformation von den Aufgabenstellungen bis zu Musterlösungen.
    Bitte beachten Sie auch die weiteren Übungsaufgaben und vollständigen Musterlösungen!
  8. Alte Probeklausur II zur Integrität und Datentransformation - BSIT5AB 24.11.2017
    Klausur&Daten und Lösungen
  9. Es folgen einige Übungen zu den obigen Verfahren Übung 1) mit der vollständigen Musterlösung und eine Übung 2)
  10. Übungen zur Datentransformation II
    Hier finden Sie Übungen zur Datentransformation von den Aufgabenstellungen über Anleitungen bis zu Musterlösungen.
  11. Übungen zur Datenintegrität und Datenmigration
    Hier finden Sie einige Übungen
    Sie finden hier einen Test und die zugehörige Musterlösung dazu.
  12. Übungen zur Datenintegrität und Datenmigration mit SLKF
    Zu dem allseits beliebten Datenmodell SLKF finden Sie hier einige Übungen
  13. Wiederholung zu OUTER Join und referentielle Integrität FHFB
    Zu dem Datenmodell Flug-Hotel-Fahrzeug-Buchungen (FHFB) finden Sie hier das einen Datenimport mit Datenfehlern und das übliche Datenmodell. Beachten Sie dazu zum Beispiel die Aufgaben und Lösungen.
  14. Überblick zum SQL und DB-Modellierungen
    Wir steigen wieder in SQL ein, um wichtige DB-Themen zu wiederholen und den kommenden Einstieg in die Betriebsaspekte einer DB vorzubereiten: Überblick
  15. Wiederholung zu OUTER Join, referentielle Integrität und Datenbereinigung FHFB
    Zu dem Datenmodell Flug-Hotel-Fahrzeug-Buchungen (FHFB) finden Sie hier das einen Datenbereinigung.
Datenformate und Datenimporte

Hier wollen wir die gebräuchlichsten Datenaustauschformaten: CSV, XML und HTML betrachten, um Daten in einer Datenbanktabelle zur Verfügung zu stellen.

  1. Datenimport-CSV
    Zunächst wollen wir eine Tabelle erstellen, bevor wir dann hier diese auf unterschiedliche Weisen mit Daten füllen: Arbeitsblatt
  2. 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
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.
  7. Test zum ER-Modell
    Aufgaben und jetzt auch mit Lösungen
  8. Test II zum ER-Modell und GROUP BY
    Zum ER-Modell betrachten Sie die Aufgaben A und Aufgaben B.
    Für die SQL-Aufgaben betrachten Sie den Datenimport und das Datenmodell zu Flug-Hotel-Fahrzeugbuchungen.
  9. 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.
  10. Beziehungen und deren Reichweite
    Ein weiterer Aspekt der Modellierung von Beziehungen in Bezug zu deren Grad wird hier betrachtet: sternartig oder linear.
  11. 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.
  12. 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.
  13. Datenbankmodelle - Übung III
    Erstellen Sie zu den folgenden Aufgabenstellungen jeweils ein ER-Modell: Drei Modellierungsaufgaben mit einer Musterlösung.
  14. Datenbankmodelle - Übung IV (Klausurvorbereitungen)
    Erstellen Sie zu den folgenden Aufgabenstellungen jeweils ein ER-Modell: Modellieraufgaben mit einer Musterlösung.
    Als leichten SQL-Anteil haben Sie hier zum FHFB-Datenmodell einige Aufgaben bereits mit einer Musterlösung.
  15. Datenbankmodelle und SQL(Klausur)
    Version A: Lösung
    Version B: Lösung
    Version C: SQL-Lösung und ER-Modell.
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 Indizes zu verstehen und sie angesmessen pflegen zu können. Indizes - 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.

Besondere Aufgaben - SQL, Excel, RegExp

Hier finden datenbankinteressierte Schüler Aufgaben, welche über den ersten Einstieg hinausgehen. Diese Aufgaben sind nicht Teil des Unterrichts, aber für Anwendungsentwickler sicher eine interessante Herausforderung. Ansonsten sprechen Sie mich bitte auch auf Ihr ganz eigenes Datenbankprojekt an, das ich mit Ihnen planen könnte.

  1. Excel Ausblicke
    Als Übung und Startpunkt für eigene Erkundungen finden Sie hier ein Excel-Aufgabenblatt.
  2. Klimawandel - Analyse und Darstellung
    Eine aufwendige Datenanalyse kann wichtige Informationen aus den Daten lesen, egal ob es sich dabei um Kundendaten, Produktionsdaten oder eben wie hier um Wetterdaten handelt. Beachten Sie dazu das Arbeitsblatt und das das Copyright des deutschen Wetterdienstes zu den Daten.
  3. Rohdaten zu Europa mit Covid-19
    Hier finden Sie einen Datenbestand mit einigen Daten und PHP-Skripten. Die Aufgabenstellungen müssen Sie allerdings durch die Daten motiviert selbst entwickeln:
    Daten, PHP-Skripte.
  4. RegExp - Reguläre Ausdrücke
    Dieser kleine Einschub zu regulären Ausdrücken eröffnet oder bereitet keine Unterrichtsreihe vor, sondern soll Sie auf die vielfältigen Einsatzmöglichkeiten von regulären Ausdrücken aufmerksam machen: Datenbereinigung, Datenanalyse und Scripting jeder Art. Ein Tutorial zu regulären Ausdrücken finden Sie hier und eine geeignete Experimentierumgebung für RegExps ist der regex-coach.