Anmeldung Registrierung
Auto Hell Dunkel
Erweiterte Suche
  1. Startseite
  2. Podcasts
  3. IT-Berufe-Podcast Podcast
  4. Relationale Datenbanken – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #17
Relationale Datenbanken – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #17

Relationale Datenbanken – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #17

IT-Berufe-Podcast vor 11 Jahren
Zu Sammlung hinzufügen

Du hast noch keine Sammlungen.

Herunterladen (rechte Maustaste) Teilen Fundstellen Kommentare
0:00
33:35
In der siebzehnten Episode meines Anwendungsentwickler-Podcasts
geht es um relationale Datenbanken und mögliche Fragen dazu im
Fachgespräch. TL;DR Für dein Fachgespräch als IT-Azubi gehe ich
häufige Fragen zu relationalen Datenbanken und verschiedenen
NoSQL-Datenbanken durch. Du erfährst, wie Tabellen aufgebaut sind,
welche Aufgaben Primärschlüssel und Fremdschlüssel haben und wie du
Beziehungen über Kardinalitäten beschreibst. An Beispielen mit
Bestellungen und Artikeln wird deutlich, wo Fremdschlüssel stehen
und wann du eine Zwischentabelle brauchst. Ein objektrelationaler
Mapper (ORM) verbindet die Tabellen mit den Objekten deiner
Programmiersprache. Kapitelmarken [00:00:01] Informationen zum
Fachgespräch [00:00:37] Datenbanken als Thema im Fachgespräch
[00:01:30] Datenbankformen und ihre Prüfungsrelevanz [00:03:06]
NoSQL in der Praxis und im Abschlussprojekt [00:04:47]
Objektorientierte Datenbanken [00:05:44] Key-Value-Stores und das
Warenkorb-Beispiel [00:06:29] Dokumentendatenbanken [00:07:50]
Graphdatenbanken und Graphalgorithmen [00:09:39] Spaltenorientierte
Datenbanken [00:11:19] NoSQL als Ergänzung relationaler Datenbanken
[00:12:15] Aufbau relationaler Datenbanken [00:13:08] Mengenlehre
und flexible SQL-Abfragen [00:14:20] Bekannte relationale
Datenbanksysteme [00:15:25] Primärschlüssel und Fremdschlüssel
[00:16:41] Natürliche und künstliche Schlüssel [00:18:10] Anonyme
Schlüssel und sprechende Materialnummern [00:20:24] Kardinalitäten
in beide Richtungen erklären [00:21:59] Beispiele für Beziehungen
zwischen Tabellen [00:24:52] 1:n-Beziehungen mit Fremdschlüsseln
umsetzen [00:26:49] Fremdschlüssel bei 1:1-Beziehungen [00:28:01]
Zuordnungstabellen für m:n-Beziehungen [00:29:22] Objektrelationale
Mapper [00:30:52] Ausblick auf weitere Datenbankthemen [00:31:23]
Shownotes, Feedback und Kontakt [00:32:47] Newsletter und
Checklisten Inhalt Datenbanken Welche Formen von Datenbanken gibt
es? relationale, hierarchische, spaltenorientierte,
objektorientierte Datenbanken, Key-Value-Stores,
Dokumentendatenbanken, Graphendatenbanken Was ist NoSQL und wofür
braucht man das? Steht für "Not only SQL". Fasst die "modernen"
Datenbanken zusammen. Sinnvolle Ergänzung zu relationalen
Datenbanken. Relationale Datenbanken Wie sind relationale
Datenbanken aufgebaut? Tabellen (Relationen) und Beziehungen
zwischen diesen. Was ist der Vorteil relationaler Datenbanken? Sie
sind flexibel mit SQL abfragbar. Nennen Sie einige bekannte
relationale Datenbanken. Oracle, Microsoft SQL Sever, MySQL, DB2,
PostgreSQL, SQLite Was sind Primär- und Fremdschlüssel?
Primärschlüssel identifizieren einen Datensatz eindeutig. Was sind
natürliche und künstliche Schlüssel? Natürliche Schlüssel sind
Attribute der Entitäten, die diese bereits eindeutig
identifizieren. Künstliche Schlüssel werden zusätzlich für die
Entität vergeben. Was sind anonyme Schlüssel? Schlüssel ohne
Bedeutung (z.B. forlaufende Nummer im Vergleich zu Materialnummern
wie "HO12CM0"). Welche Kardinalitäten gibt es und was sind
Beispiele? 1:1 (Benutzer/Login), 1:n (Benutzer/Bestellung), m:n
(Benutzer/Benutzergruppe) Wie werden die einzelnen Kardinalitäten
(1:1, 1:n, m:n) in Tabellen umgesetzt? 1:1: Fremdschlüssel in
beliebiger Tabelle, 1:n: Fremdschlüssel in n-Tabelle, m:n:
Zwischentabelle für Fremdschlüssel Was ist ein ORM?
Objekt-relationaler Mapper, verknüpft objektorientiere
Programmierung mit der relationalen Datenbank.
Literaturempfehlungen *(direkt beim Rheinwerk-Verlag bestellen*)
Das passende Kapitel im OpenBook: 12 Datenbanken - Rheinwerk
Computing :: IT-Handbuch für Fachinformatiker * Links Permalink zu
dieser Podcast-Episode RSS-Feed des Podcasts Zusammenfassung
Datenbanken im Fachgespräch Für dein Fachgespräch empfehle ich dir,
passende Beispiele aus deinem Abschlussprojekt vorzubereiten.
Gerade bei Beziehungen zwischen Tabellen hilft es, wenn du ein
konkretes Beispiel bereits durchdacht hast. Relationale Datenbanken
und SQL gehören zu den Themen, die in den Prüfungen der IT-Berufe
regelmäßig vorkommen. Auch aktuelle Datenbanktechnologien wie NoSQL
können im Fachgespräch angesprochen werden. Welche Datenbankformen
gibt es? Neben relationalen Datenbanken gibt es hierarchische
Datenbanken sowie objektorientierte und spaltenorientierte Systeme.
Hinzu kommen Key-Value-Stores, Dokumentendatenbanken und
Graphdatenbanken. Unter NoSQL fasse ich folgende fünf Formen
zusammen: Objektorientierte Datenbanken, beispielsweise db4o,
speichern Objekte aus der objektorientierten Programmierung. Dabei
können sie auch die Verweise zwischen Objekten abbilden. Das
erleichtert es, Objekte dauerhaft abzulegen. Key-Value-Stores
speichern Schlüssel-Wert-Paare und lassen sich als große Hashmap
vorstellen. Sie sind auf schnelle Zugriffe ausgelegt. Als Beispiel
kann ein kompletter Warenkorb unter einem Schlüssel gespeichert
werden, sodass ein Zugriff seinen gesamten Inhalt liefert.
Dokumentendatenbanken wie CouchDB oder MongoDB speichern Dokumente,
häufig im JSON-Format. Durch ihren schemalosen Ansatz lassen sich
Dokumente mit unterschiedlichen Attributen ablegen und durchsuchen.
Das passt beispielsweise zu einem XML-Format, das in mehreren
Varianten vorkommt. Graphdatenbanken wie Neo4j bilden Beziehungen
durch Knoten und Kanten ab. Damit lassen sich etwa Kontakte in
sozialen Netzwerken über mehrere Ebenen durchsuchen. Eigene
Abfragesprachen und etablierte Graphalgorithmen helfen dabei,
beispielsweise einen kürzesten Weg zu finden. Spaltenorientierte
Datenbanken legen die Werte einer Spalte zusammenhängend ab. Wenn
eine Abfrage nur bestimmte Spalten auswertet, muss dadurch ein
kleinerer Datenbereich gelesen werden. Das ist etwa für
Data-Warehouse-Anwendungen und große Datenmengen relevant. Als
Vertreter nenne ich Apache Cassandra. Die verbreitete Lesart "Not
Only SQL" beschreibt, wie sich solche Systeme mit relationalen
Datenbanken kombinieren lassen. Ein Key-Value-Store kann
beispielsweise einen Warenkorb zwischenspeichern. Für Analysen
können Daten aus einer relationalen Datenbank in ein
spaltenorientiertes System übertragen werden. Wie sind relationale
Datenbanken aufgebaut? In Tabellen, auch Relationen genannt, stehen
die Datensätze zeilenweise. Die Spalten beschreiben ihre Attribute.
Eine Personentabelle kann etwa Namen und Adresse enthalten.
Zwischen den Tabellen bestehen Beziehungen. Die mathematische
Grundlage stammt aus der Mengenlehre, für die seit Langem
etablierte Algorithmen existieren. Mit SQL lassen sich flexible
Abfragen formulieren, auch wenn diese beim Entwurf der Datenbank
noch nicht vorgesehen waren. So kannst du verschiedene Bedingungen
zu einer Suche kombinieren. Zu den bekannten relationalen
Datenbanksystemen gehören Oracle, Microsoft SQL Server, IBM Db2,
MySQL, PostgreSQL und SQLite. Welche Aufgaben haben Schlüssel? Ein
Primärschlüssel identifiziert einen Datensatz innerhalb einer
Tabelle eindeutig. Ein Fremdschlüssel verweist auf einen Datensatz
in einer bestimmten Tabelle. Der Verweis kann auch innerhalb
derselben Tabelle liegen. Wenn in meiner Personentabelle die
Berufs-ID 3 steht, verweist sie auf den entsprechenden Beruf in der
Berufstabelle. Dort identifiziert die 3 beispielsweise den
Datensatz "Softwareentwickler:in". In der Personentabelle ist diese
ID der Fremdschlüssel; in der Berufstabelle dient sie als
Primärschlüssel. Natürliche und künstliche Schlüssel Ein
natürlicher Schlüssel ergibt sich aus vorhandenen Attributen,
sofern diese im jeweiligen Datenmodell eindeutig sind. Eine ISBN
kann dafür ein Beispiel sein. Bei einem künstlichen Schlüssel wird
ein zusätzlicher Wert vergeben. Häufig ist das eine fortlaufende
Zahl, die beim Einfügen eines Datensatzes erhöht wird. Anonyme
Schlüssel Ein anonymer Schlüssel trägt keine fachliche Bedeutung.
Eine fortlaufende ID eignet sich dafür. Eine Materialnummer kann
dagegen Angaben über das Material oder seine Stärke enthalten. Für
Beziehungen zwischen Tabellen empfehle ich dir anonyme Schlüssel.
Wenn sich die Bedeutung einer sprechenden Materialnummer ändert,
müssten sonst auch die Schlüssel und ihre Verweise angepasst
werden. Eine Materialnummer kannst du als zusätzliches Attribut
speichern, damit ein:e Sachbearbeiter:in damit arbeiten kann. Wie
beschreibst du Kardinalitäten? Bei einer Beziehung gibst du an, wie
viele Datensätze einander zugeordnet sind. Beschreibe dabei immer
beide Richtungen. | Kardinalität | Beziehung und Beispiel | | --- |
--- | | 1:1 | Ein Datensatz aus Tabelle A gehört genau zu einem
Datensatz aus Tabelle B und umgekehrt. Ein Beispiel sind
Benutzer:innendaten und Login-Daten, wenn jede:r Benutzer:in genau
einen Login hat und jeder Login genau einer Person gehört. | | 1:n
| Einem Datensatz aus Tabelle A können mehrere Datensätze aus
Tabelle B zugeordnet sein. Jeder dieser Datensätze aus B gehört zu
einem Datensatz aus A. Beispielsweise kann ein:e Kund:in mehrere
Bestellungen aufgeben, während jede Bestellung genau einer Person
zugeordnet ist. | | m:n | Auf beiden Seiten können mehrere
Datensätze miteinander verbunden sein. Eine Bestellung kann mehrere
Artikel enthalten; derselbe Artikel kann in mehreren Bestellungen
vorkommen. | Wenn Benutzer:innendaten und Login-Daten in getrennten
Tabellen stehen, lassen sich Zugriffsrechte gezielt vergeben. Ein:e
Administrator:in, der/die ein Passwort zurücksetzt, braucht
beispielsweise keinen Zugriff auf Gehaltsdaten. Für ein:e
Sachbearbeiter:in, der/die Gehaltsdaten bearbeitet, können die
Login-Daten gesperrt bleiben. Wie setzt du diese Beziehungen um?
Über Fremdschlüssel verknüpfst du die Tabellen miteinander: Bei 1:n
steht der Fremdschlüssel auf der n-Seite. In der Bestellungstabelle
wird also die ID der zugehörigen Person gespeichert. Deren
Bestellungen findest du anschließend über diese ID. Mehrere
Bestell-IDs in einem einzelnen Feld der Personentabelle würden die
erste Normalform verletzen. Bei 1:1 kann der Fremdschlüssel
grundsätzlich auf beiden Seiten stehen....
Episode melden

„Relationale Datenbanken – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #17“

Worum geht es? Danach fragen wir noch nach dem Grund.

Teilen

Mein Archiv

Deine Privatkopie der Folgen, die du nicht verlieren willst.

Podcast-Folgen verschwinden. Feeds werden auf die letzten Episoden gekürzt, Hoster räumen alte Dateien ab, Formate wechseln den Anbieter und lassen ihr Archiv zurück. Mit „Mein Archiv“ sichert podcast.de die Folgen deiner Podcasts für dich — angefangen bei den ältesten, denn die sind zuerst weg.

  • Deine gesicherten Folgen bleiben hörbar, auch wenn das Original offline geht.
  • Auch Folgen, die im heutigen Feed gar nicht mehr stehen — podcast.de kennt sie noch.
  • Herunterladen bleibt möglich, solange die Folge beim Podcaster liegt. Der zählt seine Abrufe wie bisher.
Startet bald

Sei beim Start von Mein Archiv dabei

Mein Archiv ist fast fertig. Trag dich ein, dann bekommst du eine E-Mail, sobald es losgeht – und bist von Anfang an dabei. Wir schreiben dir nur zum Start, keine Werbung, keine Weitergabe deiner Daten.

Du bekommst zuerst eine Bestätigungsmail. Abmelden geht jederzeit. Datenschutz