6. Lehreinheit

From DHVLab

In den vorangehenden Sitzungen wurden Grundlagen zur Modellierung von Forschungsdaten und ihrer Strukturierung (ER-Diagramm) vermittelt. Nachdem unsere Daten nun in sauberer Form in Calc-Tabellen vorliegen, können wir in einem nächsten Schritt die Datensammlungen in eine Datenbank importieren.
Eine theoretische Einführung in relationale Datenbanken findet sich im entsprechenden Abschnitt des Handbuchs[A 1]. Es wird empfohlen, zunächst dort einen Blick hineinzuwerfen, bevor Sie die Lektüre fortsetzen.
Für die Verwaltung und Verarbeitung unserer anzulegenden Datenbank verwenden wir ein Datenbankmanagementsystem (DBMS), um genau zu sein die freie, webbasierte Bedienoberfläche phpMyAdmin.

Erkunden der phpMyAdmin-Umgebung

Mit der Anmeldung im DHVLab wurde für Sie automatisch eine persönliche Datenbank im DBMS phpMyAdmin angelegt. In dieser Datenbank können Sie ab sofort Tabellen anlegen, Daten importieren/exportieren und modellieren. Der Zugriff auf phpMyAdmin ist über den Browser des Virtuellen Desktops möglich. Öffnen Sie hierzu den Browser und geben Sie in die Adresszeile ein[A 2]:
web.dmz.dhvlab.fo/sql
Melden Sie sich wie gewohnt mit Ihren Benutzerdaten an. Erkunden Sie die Oberfläche des DBMS. Einen nützliche Beschreibung finden Sie im zugehörigen Abschnitt des Handbuchs[A 3].

Import einer Tabelle

Beachten Sie stets, in welcher Navigationsebene Sie sich aktuell befinden, bevor Sie auf "Importieren" klicken. Die zu importierende Datei wird genau dort eingefügt. Wählen Sie eine Datei aus, die Sie importieren möchten. Wählen Sie dann das Format der ausgewählten Datei aus. Wenn Sie als Dateiformat CSV auswählen, müssen Sie bei den nun angezeigten "Formatspezifischen Optionen" noch spezifizieren, durch welches Zeichen die einzelnen Spalten in der Datei getrennt werden (z.B. ",", ";", "\t"). Um dies zu ermitteln, werfen Sie zuvor mit einem Texteditor einen Blick in die CSV-Datei. Mit Klick auf "OK" schließen Sie den Import der Tabelle ab. Sie wird an der entsprechenden Stelle in der linken Auflistung angeführt.
Anwendungsfall:

  1. Im Ordner "courses → grabdenkmaeler → liegt die Datei "personen.xls". Speichern Sie eine Kopie dieser Datei in ihrem "Persönlichen Ordner" des Virtuellen Desktops.
  2. Wandeln Sie die Datei in das CSV-Format um
  3. Löschen Sie eine ggf. vorhandene "ID"-Spalte
  4. Öffnen Sie die Datei in einem Texteditor Ihrer Wahl (z.B. KATE), um zu sehen, welcher Separator verwendet wird (hier: Komma)
  5. Wählen Sie in phpMyAdmin Ihre Datenbank (labuser_ihrname) an. Gehen Sie anschließend auf "Importieren". Wählen Sie dort die Datei an, als Format "CSV", und setzen Sie einen Haken bei der Option "Die erste Zeile der Datei enthält die Spaltennamen". Bestätigen Sie anschließend mit OK.
  6. Wählen Sie anschließend Ihre neu eingefügte Tabelle an und gehen Sie in den Bereich "Struktur". Dort können Sie nun eine ID-Spalte ergänzen (Typ: INT; Länge 10; Haken setzen bei "AI" (Auto Increment)), die den Datensätzen automatisch ihre ID zuweist.
  7. Abschließend können Sie bei den anderen Spalten noch den jeweiligen Spaltennamen ändern sowie den Datentyp (VARCHAR, INT samt Länge). Der Datentyp definiert, welche und wie viele Zeichen in einer Spalte vorkommen dürfen[A 4].

Export einer Tabelle

Wählen Sie nun die eben importierte Tabelle an, um Sie wiederum aus der Datenbank zu exportieren. Klicken Sie anschließend auf "Exportieren" in der operativen Ebene. Bei "Art des Exports" können Sie es in der Regel "Schnell - nur notwendige Optionen anzeigen" belassen. Bei "Format" können Sie zwischen einer Reihe an Ausgabeformaten wählen. Sinnvollerweise speichern Sie Ihre Ausgabe entweder als SQL-File oder als CSV und wählen Ihren persönlichen Ordner als Speicherort.

Anlegen einer neuen Tabelle

Es gibt neben dem Import von Tabellen natürlich auch die Möglichkeit, diese unmittelbar in phpMyAdmin anzulegen. Dies erfolgt auf zwei verschiedene Arten, entweder manuell über die intuitive Benutzeroberfläche oder durch Eingabe des entsprechenden SQL-Befehls[A 5].
Anwendungsfall "via Benutzeroberfläche" (Ortstabelle):

  1. Wählen Sie Ihre persönliche Datenbank an
  2. Klicken Sie auf "Neu" und geben alle gewünschten Informationen zur Tabellenstruktur in die dafür vorgesehenen Felder ein: Tabellenname ("ort"); Spaltennamen ( 1) ort_id, 2) name, 3) name_alt, 4) verwaltungsebene, 5) staat) und Datentypen+Werte ( 1) INT, 10; "AI", Index: "Primary"; 2)-5) VARCHAR, 300, Kollation: utf-8-general-ci).
  3. Bestätigen Sie mit "Speichern"

Anwendungsfall "SQL" (Grabstätten):

  1. Wählen Sie Ihre persönliche Datenbank an
  2. Klicken Sie in der operativen Ebene auf "SQL"
  3. Geben Sie in die SQL-Eingabemaske folgendes SQL-Statement ein:

CREATE TABLE grabstaette (grabstaette_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(550), ort_id INT(11), kategorie_id INT(11), geokoordinate1 DECIMAL(10,7), geokoordinate2 DECIMAL(10,7), abbildung VARCHAR(550), wikipedia VARCHAR(550));

Einfügen eines neuen Datensatzes

Sie können in Ihre neu angelegte Tabelle nun nach Belieben neue Datensätze hinzufügen, bestehende überarbeiten oder löschen. Dies erfolgt wiederum über die intuitiv gestaltete Benutzeroberfläche.
Anwendungsfall "Datensatz einfügen":

  1. Sie möchten einen Datensatz zur Abtei Heiligenkreuz in ihrer Tabelle "Grabdenkmaeler" ergänzen.
  2. Wählen Sie die Tabelle an und klicken Sie in der operativen Ebene auf "Einfügen"
  3. Geben Sie Ihre Werte in die dafür vorgesehenen Felder ein (name: "Abtei Heiligenkreuz", id_ort: "1", id_kategorie: "2", geokoordinate1: "48.0553340", geokoordinate2: "16.1308230", abbildung: "", wikipedia: "Q697221", link_alt: "")


Übungsaufgaben

  1. Importieren Sie die Tabelle "ort" aus dem Kursordner in Ihre persönliche DB (Hinweis: Kopieren Sie die Datei zunächst aus dem Ordner auf Ihren virt. Desktop!).
    1. Fügen Sie anschließend einen Datensatz (München, Bayern, Deutschland) hinzu.
    2. Löschen Sie den Datensatz zu "Wiener Neustadt" aus Ihrer Tabelle.
    3. Ändern Sie beim Eintrag "Heiligenkreuz" das Land zu "Timbuktu".
  2. Im Kursordner befindet sich der Unterordner "Muster". Darin finden Sie alle Muster-Tabellen, die im Kursrahmen besprochen wurden. Legen Sie mit Hilfe des erlernten SQL-Befehls eine neue Tabelle an und orientieren Sie sich bei der Struktur an einer der Muster-Tabellen[A 6].

Anmerkungen

  1. Siehe die Abschnitte "Das relationale Datenmodell - Theoretische Grundlagen I" sowie "Das relationale Datenmodell - Theoretische Grundlagen II".
  2. Es ist auch möglich, die Datenbankumgebung außerhalb des Virtuellen Desktops, über folgende Adresse zu öffnen: Datenrepositorium
  3. Siehe "Praktischer Einstieg in das DBMS phpMyAdmin".
  4. Für eine Übersicht über die gängigen Datentypen sowie Grundlegendes zur Anpassung der Tabellenstruktur vgl. das zuvor genannte Handbuch.
  5. SQL steht für Structured Query Language. Wir werden ihre Struktur und Funktionsweise im weiteren Verlauf ausführlich behandeln.
  6. Der Lernerfolg der Studierenden kann über das DBMS nachvollzogen werden, da der Kursleiter Zugriff auf alle TN-Datenbanken besitzt.