Das relationale Datenmodell - Theoretische Grundlagen II

From DHVLab

Revision as of 16:10, 9 September 2016 by Jschulz (talk | contribs) (Created page with "Die relationale Datenbank in der Praxis Bei einer Datenbank wird generell unterschieden in das Datenbankschema (technische Ausgestaltung des theoretischen Datenmodells) und di...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Die relationale Datenbank in der Praxis Bei einer Datenbank wird generell unterschieden in das Datenbankschema (technische Ausgestaltung des theoretischen Datenmodells) und die tatsächliche Ausprägung der Datenbank (Datenbank-Zustand). Das Datenbankschema beschreibt aufbauend auf dem Datenmodell die möglichen Inhalte einer Datenbank und die Struktur/Typen der einzelnen Tabellen und deren Spalten. Veränderungen am Datenbankschema sind jederzeit möglich ("Schema-Evolution"). Der Datenbank-Zustand ergibt sich aus dem tatsächlich in der Datenbank befindlichen Inhalt, sprich der zugewiesenen Attributwerte. Im Datenbanksystem (DBS) werden Datenbank-Schema und Datenbank-Zustand gleichermaßen gespeichert. Ihre Übereinstimmung wird durch das eingesetzte Datenbankmanagementsystem (DBMS) kontrolliert. Beispiel: Das Datenbank-Schema gibt für eine Spalte vor, dass maximal 10 Zeichen eingetragen werden können. In dieser Spalte können sich nun Einträge unterschiedlicher Länge (variabel!), aber nur bis zu zehn Zeichen befinden (Datenbank-Zustand)

Das oben erläuterte relationale Datenmodell kommt in relationalen Datenbanksystemen zum Einsatz. Ein Datenbanksystem besteht aus zwei Komponenten: Während (1.) die Datenbank die eigentlichen (Forschungs-)Daten vorhält, können (2.) letztere über ein sogenanntes (relationales) Datenbankmanagementsystem verwaltet und verarbeitet werden. Ein DBS besitzt die Aufgabe, große Datenmengen 1. zu beschreiben, 2. zu langfristig abzuspeichern und 3. im Falle eines Verlusts wiederzugewinnen; dadurch wird ihre dauerhafte Nutzung durch Client-Programme gewährleistet. [Hier könnte man noch die Anforderungen an ein DBS verlinken, nach Edgar F. Codd, 1982 - http://www.dbs.ifi.lmu.de/Lehre/DBS/WS-2015/Skript/dbs1_01.pdf - Folie 27f.]

Ein DBMS, welches sowohl auf Servern als auch auf Clients installiert werden kann, ist MySQL. Es gibt im Wesentlichen folgende Zugriffsmöglichkeiten: - Kommandozeile (Shell) - Clientprogramm (z.B. HeidiSQL (nur für Windows) [1], MySQL-Workbench [mysql.de/products/workbench/]) - phpMyAdmin, eine freie Webanwendung zur Verwaltung von MySQL-Datenbanken

SQL: Relationale Algebra als theoretische Grundlage Zur Abfrage, Manipulation und Erweiterung der Datenbasis kommt SQL - die Structured Query Language - zum Einsatz. Es handelt sich um eine ISO-codierte, von ihrer Syntax her gesehen relativ einfach aufgebaute Datenbanksprache, welche semantisch an die englische Umgangssprache angelehnt ist. Mit dieser Datenbanksprache können unterschiedlichste Abfragen und Operationen durchgeführt werden. Ihnen allen gemein ist die relationale Algebra, die ihr theoretisches Fundament darstellt. Diese gibt vor, in welcher Art und Weise Daten gespeichert, abgefragt/gefiltert, verknüpft oder verändert werden können. Die Operationen der relationalen Algebra werden mittels SQL als Datenbankoperatoren eingebunden bzw. umgekehrt formuliert: die durch eine SQL-Eingabe angeforderte Datenbankoperation wird durch das DBMS in relationale Algebra übersetzt. Die wesentlichen Operationen (aus denen andere abgeleitet werden können) sind: - Projektion - Selektion - Kreuzprodukt (Kartesisches Produkt) - Vereinigung/Join (Semi Join, Outer Join, etc.) - Differenz - Umbenennung Das Ergebnis einer Abfrage oder Operation ist immer eine (neue) Tabelle (zunächst ohne eigenen Namen, solange nicht abgespeichert).

Wir werden uns später bei der praktischen Arbeit mit der Datenbank intensiv mit SQL und ihren Spezifika auseinandersetzen. An dieser Stelle wollen wir es bei diesen theoretischen Grundzügen belassen. Eine umfassende Einführung in die relationale Algebra und ihre Bedeutung für SQL bietet: http://www.dbs.ifi.lmu.de/Lehre/DBS/WS-2015/Skript/dbs1_03.pdf https://de.wikipedia.org/wiki/Relationale_Algebra

Im Folgenden werden wir uns anhand der phpMyAdmin-Umgebung der Arbeit mit relationalen Datenbanken annähern und ihre vielfältigen Einsatzmöglichkeiten in der geisteswissenschaftlichen Forschung verstehen lernen.