Difference between revisions of "Einführung Datenbanken"

From DHVLab

m
m
Line 13: Line 13:
 
Um Ihnen den Nutzen der Arbeit mit Datenbanken gleich zu Beginn zu illustrieren, sei an dieser Stelle auf eine Auswahl an [http://www.itg.uni-muenchen.de/projekte/oeffentlich/index.html Projekten] der IT-Gruppe Geisteswissenschaften verwiesen, die auf MySQL-Datenbanken zurückgreifen. Ihnen gemein ist, dass sich das Framework beliebig verändern lässt, ohne dabei mit den Daten in Kontakt zu kommen. Wichtig ist immer, dass die Daten '''sauber strukturiert''' abgelegt wurden. Dann ist ihre Verwendung in verschiedensten Szenarien denkbar:
 
Um Ihnen den Nutzen der Arbeit mit Datenbanken gleich zu Beginn zu illustrieren, sei an dieser Stelle auf eine Auswahl an [http://www.itg.uni-muenchen.de/projekte/oeffentlich/index.html Projekten] der IT-Gruppe Geisteswissenschaften verwiesen, die auf MySQL-Datenbanken zurückgreifen. Ihnen gemein ist, dass sich das Framework beliebig verändern lässt, ohne dabei mit den Daten in Kontakt zu kommen. Wichtig ist immer, dass die Daten '''sauber strukturiert''' abgelegt wurden. Dann ist ihre Verwendung in verschiedensten Szenarien denkbar:
  
[http://www.bht.gwi.uni-muenchen.de/books.php Biblia Hebraica Transcripta]<br />
+
[http://www.bht.gwi.uni-muenchen.de/ Biblia Hebraica Transcripta]<br />
 
[http://www.kaiserhof.gwi.uni-muenchen.de/ Höflinge der Habsburgischen Kaiser]<br />
 
[http://www.kaiserhof.gwi.uni-muenchen.de/ Höflinge der Habsburgischen Kaiser]<br />
 
[https://www.verba-alpina.gwi.uni-muenchen.de/ VerbaAlpina]
 
[https://www.verba-alpina.gwi.uni-muenchen.de/ VerbaAlpina]
Line 33: Line 33:
 
<br />
 
<br />
 
* Datenmodellierung mit SQL:
 
* Datenmodellierung mit SQL:
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_02_Auswahlabfrage.pdf Datenmodellierung] (LUIS, Universität Hannover)
+
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_02_Datenauswahl.pdf Datenmodellierung] (LUIS, Universität Hannover)
 
<br />
 
<br />
 
* Informationen filtern:
 
* Informationen filtern:
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_03_SELECTWHERE.pdf Filtern] (LUIS, Universität Hannover)
+
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_03_Datenfilterung.pdf Filtern] (LUIS, Universität Hannover)
 
<br />
 
<br />
 
* Tabellenbeziehungen abbilden (Joins):
 
* Tabellenbeziehungen abbilden (Joins):
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_04_JOINTable.pdf Verknüpfen] (LUIS, Universität Hannover)
+
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_04_TabellenVerbinden.pdf Verknüpfen] (LUIS, Universität Hannover)
 
<br />
 
<br />
 
* Daten berechnen:
 
* Daten berechnen:
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_05_SELECTBerechnung.pdf Berechnen] (LUIS, Universität Hannover)
+
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_06_DatenBerechnen.pdf Berechnen] (LUIS, Universität Hannover)
 
<br />
 
<br />
 
* Wichtige SQL-Befehle (Delete, Insert, Update):
 
* Wichtige SQL-Befehle (Delete, Insert, Update):
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_06_Aktionsabfragen.pdf Aktionsabfragen] (LUIS, Universität Hannover)
+
[https://www.luis.uni-hannover.de/fileadmin/kurse/material/SQL-Einfuehrung/SQL_08_Aktionsabfragen.pdf Aktionsabfragen] (LUIS, Universität Hannover)
 
----------------------------------
 
----------------------------------
 
<br \><br \>
 
<br \><br \>

Revision as of 09:41, 29 March 2017

Im vorangehenden Manual haben wir uns mit dem Tabellenkalkulationsprogramm Calc vertraut gemacht. Dieses eignet sich für die Verwaltung und Verarbeitung (kleinerer) Datensammlungen. Die grafische Benutzeroberfläche ermöglicht eine benutzerfreundliche Bearbeitung. Zeilen und Spalten können grafisch beliebig formatiert werden. Für die Sammlung größerer Forschungsdatenmengen sollte die Verwendung einer (relationalen) Datenbank in Betracht gezogen werden. Diese bietet Ihnen eine Reihe an Vorteilen hinsichtlich Datenstrukturierung, -verwaltung und -verarbeitung[A 1]:

  • Unabhängigkeit der Daten: In einer Datenbank abgelegte Datensammlungen können in verschiedenen Formaten exportiert und damit universal weiterverarbeitet werden = größtmögliche Kompatibilität
  • Leistungsfähigkeit: eine SQL-Datenbank ist idR schneller und leistungsfähiger als native XML-Datenbanken wie eXist oder Tamino
  • Schnittstelle zu Programmiersprachen wie JavaScript (via AJAX), PHP oder Python. Ihre Kombination bildet die Grundlage für die Schaffung komplexer dynamischer Webinterfaces.
  • Vermeidung von Redundanz: In einer (normalisierten) Datenbank werden Daten einheitlich und eindeutig identifizierbar abgelegt.
  • Verknüpfbarkeit der Daten durch die (automatische) Zuweisung von Schlüsseln (ID's)
  • Parallele Bearbeitung durch mehrere Mitarbeiter möglich.
  • Durchsuchbarkeit und Möglichkeit zu umfassenden Berechnungen auf Grundlage der Daten

Im folgenden Manual werden wir uns zunächst die theoretischen Grundlagen (Datenmodelle, relationale Algebra) aneignen und dabei einen Schwerpunkt auf das relationale Datenmodell legen. Anschließend werden wir uns dem relationalen Datenbanksystem[A 2] zuwenden und schließlich mit Hilfe eines relationalen Datenbankmanagementsystems[A 3] in die praktische Arbeit einsteigen. Hierzu werden wir uns mit der webbasierten, grafischen Benutzeroberfläche phpMyAdmin vertraut machen und die Datenmanipulationssprache SQL anhand praktischer Beispiele (Abfrage von Daten, Manipulation von Daten, Änderungen der Datenbankstruktur) erlernen.

Um Ihnen den Nutzen der Arbeit mit Datenbanken gleich zu Beginn zu illustrieren, sei an dieser Stelle auf eine Auswahl an Projekten der IT-Gruppe Geisteswissenschaften verwiesen, die auf MySQL-Datenbanken zurückgreifen. Ihnen gemein ist, dass sich das Framework beliebig verändern lässt, ohne dabei mit den Daten in Kontakt zu kommen. Wichtig ist immer, dass die Daten sauber strukturiert abgelegt wurden. Dann ist ihre Verwendung in verschiedensten Szenarien denkbar:

Biblia Hebraica Transcripta
Höflinge der Habsburgischen Kaiser
VerbaAlpina

Referenzen und Hinweise

Empfehlenswerte Client-Programme für MySQL-Datenbanken:

  • HeidiSQL - Empfehlenswertes, kostenloses Datenbankmanagementsystem für MySQL-Datenbanken und damit eine Alternative zur phpMyAdmin-Oberfläche, die im Weiteren verwendet wird.
  • MySQL-Workbench - Arbeitsumgebung zur Erstellung, Modellierung und Bearbeitung von MySQL-Datenbanken.

To Do: ggf. HeidiSQL im DHVLab installieren und eigenes kleines Manual hierzu verfassen

Weiterführende Links

  • Einführung, Grundlegendes:

Einführung (LUIS, Universität Hannover)

  • Datenmodellierung mit SQL:

Datenmodellierung (LUIS, Universität Hannover)

  • Informationen filtern:

Filtern (LUIS, Universität Hannover)

  • Tabellenbeziehungen abbilden (Joins):

Verknüpfen (LUIS, Universität Hannover)

  • Daten berechnen:

Berechnen (LUIS, Universität Hannover)

  • Wichtige SQL-Befehle (Delete, Insert, Update):

Aktionsabfragen (LUIS, Universität Hannover)




Weiter zu Verschiedene Arten von Datenmodellen

Anmerkungen

  1. Zum Erstellen von Grafiken und Visualisierungen ist eine SQL-Datenbank nur eingeschränkt verwendbar. Die Visualisierung sollte durch Export der Forschungsdaten in hierfür geeignete Software erfolgen.
  2. In unserem Fall greifen wir auf das sehr leistungsstarke Datenbanksystem MySQL zurück. Daneben existieren weitere kommerzielle und freie Datenbanksysteme wie Oracle, Microsoft SQL Server, PostgreSQL etc.
  3. Die OpenSource-Software phpMyAdmin zählt mit rund 50 Millionen Installationen weltweit zu den am meisten verbreiteten Datenbankverwaltungssystemen.