[Ausbildung] Grundlagen Datenbanken

In dieser Einheit wollen wir die Grundlagen von Datenbanken, DBMS und SQL kennenlernen und auch schon erste Übungen am ER-Modell durchführen.

Voraussetzungen

  • Laptop

Material

  • 2x Metaplanwand + Karten (viele!)
  • Beamer + Lautsprecher

Dauer

3 -4 Stunden

Themen

Datenbanken, DBMS, SQL

Ablauf

Zunächst führen wir die Teilnehmer mit einem kleinen Video zur Dampfmaschine aus dem Film „Die Feuerzangenbowle“ in das Thema ein:

Nun wollen wir klären, was eine Datenbank eigentlich ist:

Eine Datenbank, auch Datenbanksystem (DBS) genannt, ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern und benötigte Teilmengen in unterschiedlichen, bedarfsgerechten Darstellungsformen für Benutzer und Anwendungsprogramme bereitzustellen.

Ein DBS besteht aus zwei Teilen: der Verwaltungssoftware, genannt Datenbankmanagementsystem (DBMS) und der Menge der zu verwaltenden Daten, der Datenbank (DB) im engeren Sinn, zum Teil auch „Datenbasis“ genannt. Die Verwaltungssoftware organisiert intern die strukturierte Speicherung der Daten und kontrolliert alle lesenden und schreibenden Zugriffe auf die Datenbank. Zur Abfrage und Verwaltung der Daten bietet ein Datenbanksystem eine Datenbanksprache an.

(Quelle: https://de.wikipedia.org/wiki/Datenbank)

Es folgt ein kleiner Vortrag über die verschiedenen Arten von Datenbanken:

Hierarchisches Datenbankmodell

Ein Hierarchisches Datenbankmodell ist das älteste Datenbankmodell; es bildet die reale Welt durch eine hierarchische Baumstruktur ab. Jeder Satz (Record) hat also genaueinen Vorgänger, mit Ausnahme genau eines Satzes, nämlich der Wurzel der so entstehenden Baumstruktur.

Die Daten werden in einer Reihe von Datensätzen gespeichert, mit denen verschiedene Felder verknüpft sind. Die Instanzen eines bestimmten Datensatzes werden als Datensatzabbild zusammengefasst. Diese Datensatzabbilder sind vergleichbar mit den Tabellen einer relationalen Datenbank.

(Quelle: https://de.wikipedia.org/wiki/Hierarchisches_Datenbankmodell)

Netzwerkdatenbankmodell

Das Netzwerkdatenbankmodell wurde von der Data Base Task Group (DBTG) des Programming Language Committee (später COBOL Committee) der Conference on Data Systems Language (CODASYL) vorgeschlagen, der Organisation, die auch für die Definition der Programmiersprache COBOL verantwortlich war. Es ist auch unter den Namen „CODASYL Datenbankmodell“ oder „DBTG Datenbankmodell“ bekannt und entsprechend stark von Cobol beeinflusst. Der fertige DBTG-Bericht wurde 1971, etwa zur gleichen Zeit wie die ersten Veröffentlichungen über das relationale Datenbankmodell, vorgestellt. Er enthielt Vorschläge für drei verschiedene Datenbanksprachen: Eine Schema Data Description Language (Schema-Datenbeschreibungssprache), eine Subschema Data Description Language (Subschema-Datenbeschreibungssprache) und eine Data Manipulation Language (Datenmanipulationssprache).

(Quelle: https://de.wikipedia.org/wiki/Netzwerkdatenbankmodell)

Objektrelationale Datenbank

Eine Objektrelationale Datenbank (kurz ORDB), auch objektrelationales Datenbankmanagementsystem (kurz ORDBMS) genannt, stellt das Bindeglied zwischen klassischen relationalen Datenbanken und Objektdatenbanken dar. Sie kommen überall dort zum Einsatz, wo Mengen von Objekten in Beziehung zu anderen Daten oder Objekten gebracht werden müssen.

(Quelle: https://de.wikipedia.org/wiki/Objektrelationale_Datenbank)

Objektdatenbank

Eine Objektdatenbank oder objektorientierte Datenbank ist eine Datenbank, die auf dem Objektdatenbankmodell basiert. Im Unterschied zur relationalen Datenbank werden Daten hier als Objekte im Sinne der Objektorientierung verwaltet. Das zugehörige Datenbankmanagementsystem wird als das objektorientierte Datenbankmanagementsystem bezeichnet. Objektdatenbank und Objektdatenbankmanagementsystem bilden gemeinsam das Objektdatenbanksystem.

(Quelle: https://de.wikipedia.org/wiki/Objektdatenbank)

Dokumentenorientierte Datenbank

Eine dokumentenorientierte Datenbank ist eine Datenbank, bei der Dokumente die Grundeinheit zur Speicherung der Daten bilden. Als das am weitesten verbreitete Datenbanksystem mit einer dokumentenorientierten Datenbank gilt IBM Notes (vor 2013 Lotus Notes).

Während eine relationale Datenbank aus Datenbanktabellen besteht, die einem festen Datenbankschema unterliegen, enthält eine dokumentenorientierte Datenbank einzelne Dokumente. Diese Dokumente können strukturierte Dateien mit einem Standard-Dateiformat sein (wie eine Textverarbeitungsprogrammdatei), aber auch Binary Large Objects sind möglich, die im Sinne eines Datenbankzugriffs nicht weiter strukturiert sind (wie ein Videofilm im mpeg-Format).[1] Strukturierte Dateien mit einem frei festlegbaren Schema bestehen aus einer Reihe von Datenfeldern, die aus je einem Schlüssel-Wert-Paar bestehen können. Weitere Datenformate sind beispielsweise JSON-Objekte, YAML-Dokumente oder XML-Dokumente (siehe auch: XML Schema).

(Quelle: https://de.wikipedia.org/wiki/Dokumentenorientierte_Datenbank)

Relationale Datenbank

Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf einem tabellenbasierten relationalen Datenbankmodell. Grundlage des Konzeptes relationaler Datenbanken ist die Relation. Sie stellt eine mathematische Beschreibung einer Tabelle dar und ist ein im mathematischen Sinn wohldefinierter Begriff; siehe Datenbankrelation. Operationen auf diesen Relationen werden durch die relationale Algebra bestimmt.

(Quelle: https://de.wikipedia.org/wiki/Relationale_Datenbank)

Anwendungsgebiete

Datenbanken werden heutzutage an vielen Stellen eingesetzt.

Zunächst befragen wir die Teilnehmer, bevor wir anschließend einige Bereiche nennen, die vlt noch nicht genannt wurden:

  • Webseiten
  • Internetanwendungen
  • Banken
  • Videodatenbanken
  • Musikdatenbanken
  • Apps (Lokale Datenbanken)

Als nächstes zeigen wir ein erste Wiederholungsvideo zu den Grundbegriffen:

Bekannte DBMS

Auch hier fragen wir zunächst die Teilnehmer und zeigen anschließend eine Liste:

Hier machen wir eine kurze Pause, da wir davon ausgehen, dass den Teilnehmern erst mal der Kopf raucht:

Rauchender Kopf
Rauchender Kopf

ER-Modell

Wir steigen mit einem Video in das Thema Modellierung ein:

Und führen nun eine praktische Übung durch:

Hierzu teilen wir die Teilnehmer in 2 Gruppen auf und stellen 2 Metaplan-Wände Rücken an Rücken auf.

Wir geben nun ein Thema vor, zu dem jede Gruppe Objekte, jeweils ein Primär-Attribut und ein weiteres Attribut und die Beziehungen untereinander finden soll.

Das Thema ist Band (wie aus der Musik)

Nach 15 Minuten wird ausgewertet.

Eine mögliche Lösung:

ERD Band
ERD Band

Mit einem nächsten Video vertiefen wir das Wissen nocheinmal:

SQL

Im letzten Teil widmen wir uns noch SQL, der Sprache der relationalen Datenbanken.

SQL ist eine Datenbanksprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen.
(Quelle: https://de.wikipedia.org/wiki/SQL)

Auch hierzu starten wir mit einem Video:

Anschließend gehen wir die 4 SQL-Befehle mit einem Beispiel durch.

Dazu erstellen wir eine Tabelle „Serien“ aus einzelnen Kärtchen, die wir auf eine Metaplan-Wand heften. Die Tabelle sieht dann ungefähr so aus:

Name Staffeln Bewertung
Game of Thrones 7 9.5
Vikings 5 8.6
Stranger Things 2 8.9

SELECT

Wir erstellen nacheinander 4 Karten mit Bedingungen in verschiedenen Farben und heften kleine Karten der gleichen Farbe an die passenden Zeilen an.

  • Alle (keine Bedingung)
  • Name = Vikings
  • Mehr als 3 Staffeln
  • Bewertung beser als 9.0

INSERT

Nun fügen wir eine neue Zeile ein:

  • The IT Crowd
  • 5
  • 8.5

Und gehen unsere SELECTS erneut durch

UPDATE

Wir ändern die Bewertung der Zeile IT Crowd auf 9.1, in dem wir den Text auf der Karte streichen und erstetzen.

Das gleiche machen wir mit den Staffeln bei Game of Thrones, diese setzen wir auf 8

Anschließend führen wir wieder unsere SELECTS durch.

DELETE

Als letztes löschen wir noch eine Zeile (Vikings) und führen auch hier wieder unsere SELECTS durch.

Vertiefung

Zum Abschluss dürfen die Teilnehmer noch das Spiel SQL-Island beginnen, mit dem sie die gewonnen Fähigkeiten übern können.

Slides

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.