Zurück zur Artikelliste Artikel
7 Leseminuten

Was ist eine SQL-Datenbank?

SQL-Datenbanken werden seit Jahrzehnten verwendet und haben sich zu einem der gängigsten Datenverwaltungswerkzeuge entwickelt. Sie bieten dem Benutzer eine effiziente Möglichkeit, die Daten zu speichern, und eine intuitive Möglichkeit, auf sie zuzugreifen oder sie zu ändern.

In diesem Artikel erläutern wir zunächst, was eine Datenbank ist, und zeigen einige Beispiele. Wir gehen dann darauf ein, wie Datenbanken für die effiziente Arbeit mit großen Mengen strukturierter Daten eingesetzt werden können. Dann zeigen wir Ihnen einige Beispiele für verschiedene Arten von SQL-Datenbanken und wann sie eingesetzt werden können. Wir werden nicht auf die Einzelheiten des Schreibens von SQL-Abfragen eingehen, aber wenn Sie auf der Suche nach Lernmaterial sind, ist der Kurs SQL für Anfänger ein guter Startpunkt. Er beginnt auf Anfängerniveau und arbeitet sich bis zu einigen fortgeschrittenen Abfragen vor. Und er enthält eine Menge interaktiver Übungen.

Was ist eine Datenbank?

Sie sind vielleicht mit der Speicherung von Daten in einer Tabellenkalkulation vertraut, die für kleinere Datenmengen praktisch ist. Diese Datenmengen speichern Sie normalerweise lokal auf Ihrem Computer. Tabellenkalkulationen eignen sich hervorragend für einzelne Benutzer, die die Daten nicht allzu sehr bearbeiten müssen. Solche Benutzer kombinieren zum Beispiel nicht oft Daten aus verschiedenen Blättern. Wenn Sie jedoch mit größeren Datenmengen aus verschiedenen Quellen arbeiten müssen, benötigen Sie möglicherweise erweiterte Funktionen.

An dieser Stelle kommen Datenbanken ins Spiel. Eine Datenbank ist ein Softwareprodukt, das dazu dient, große Mengen an Informationen in einer stark strukturierten Weise zu speichern. Eine Datenbank kann lokal auf Ihrem Computer oder remote auf einem externen Server gespeichert werden. Im letzteren Fall müssen Sie ein Programm verwenden, um über ein Netzwerk eine Verbindung zum Server herzustellen, damit Sie auf die Daten zugreifen können.

Hinter den Kulissen erledigt eine Datenbank einige Dinge, die Ihnen das Leben leichter machen. Sie verwaltet effizient die Speicherung großer Datenmengen, d. h. Millionen bis Milliarden von Zeilen, was mit einer Tabellenkalkulation gar nicht möglich ist. In einer Datenbank gibt es interne Konsistenzprüfungen, um sicherzustellen, dass alle neuen Daten, die der Datenbank hinzugefügt werden, mit vordefinierten Datentypen übereinstimmen. Bestimmte Einträge dürfen zum Beispiel nur Text oder Zahlen enthalten.

In größeren Projekten arbeiten in der Regel viele Personen an denselben Daten. Eine Datenbank kann den gleichzeitigen Zugriff auf ihre Daten und deren gleichzeitige Änderung verwalten. Das bedeutet, dass mehrere Personen die Datenbank gleichzeitig nutzen können, ohne sich gegenseitig zu behindern. Außerdem können die Benutzerrechte aus Sicherheitsgründen verwaltet werden, z. B. können einige Benutzer die Daten nur lesen, während andere sie auch hinzufügen oder ändern können.

Relationale Datenbanken

Wir haben bereits erwähnt, dass die Daten in einer Datenbank stark strukturiert sind. Aber wie genau sind sie strukturiert? Der gängigste Datenbanktyp ist die relationale Datenbank, bei der die Daten in Tabellen organisiert sind, die Spalten und Zeilen enthalten, wobei jede Zeile durch einen eindeutigen Schlüssel identifiziert wird. Die Spalten stellen verschiedene Variablen (oder Attribute) dar, und die Zeilen sind Messungen (oder Instanzen) dieser Variablen. Wenn Sie mit Tabellenkalkulationen arbeiten, ist Ihnen dieses Konzept vielleicht vertraut.

In einer relationalen Datenbank werden die Daten normalerweise in mehreren Tabellen gespeichert. Allerdings können Daten aus verschiedenen Tabellen kombiniert werden. Dadurch kann die gesamte Datenbank recht flexibel sein.

Nehmen wir folgendes Beispiel: Wir haben ein Unternehmen mit mehreren Mitarbeitern. Wir können den Namen und die Berufsbezeichnung jedes Mitarbeiters in einer Tabelle namens Employee. Die Tabelle sähe dann so aus:

FirstNameLastNameJobTitle
SarahWilcoxCEO
LiYangDepartment Head
EveTaylorDeveloper
LiamNelsonDeveloper

Zusätzlich zu dieser Tabelle können wir eine weitere Tabelle mit dem Namen Job. Sie enthält die Gehälter und wöchentlichen Arbeitsstunden für jede Stellenbezeichnung:

JobTitleSalaryHoursPerWeek
CEO160,00050
Department Head130,00045
Developer115,00035

Wir können diese Tabellen in einer relationalen Datenbank speichern und Informationen aus jeder Tabelle kombinieren, um leicht herauszufinden, wie viele Stunden pro Woche jeder Entwickler arbeiten muss oder wie hoch sein Jahresgehalt ist.

Jede Zeile hat einen bestimmten Datentyp. Die Einträge in der Spalte JobTitle können nur Textinformationen enthalten, während die Spalte "Gehalt" nur eine Zahl enthalten kann. Wenn ein neuer Entwickler in das Unternehmen eintritt, brauchen Sie nur eine Zeile in die Tabelle " Mitarbeiter" einzufügen, und Sie wissen automatisch, wie hoch sein Gehalt ist und wie viele Stunden er arbeiten muss.

Es gibt noch viele weitere Situationen, in denen relationale Datenbanken verwendet werden können. Eine Universitätsdatenbank könnte eine Tabelle mit allen Studenten eines Fachbereichs, den Kursen, für die sie eingeschrieben sind, und den Noten der Studenten enthalten. In derselben Datenbank könnte sich eine weitere Tabelle mit den Namen der Dozenten, den von ihnen unterrichteten Kursen und der Uhrzeit ihrer Vorlesungen befinden. In einer relationalen Datenbank könnten Informationen für einen Online-Shop gespeichert werden, einschließlich Kundeninformationen, Verkaufs- und Bestellinformationen und Produktinformationen (d. h. was verkauft wird).

Aber nicht nur Informationen über Personen oder Produkte können in einer relationalen Datenbank gespeichert werden. Zeitreihendaten könnten in Tabellen gespeichert werden; jede Zeile würde einen anderen Zeitpunkt darstellen.

Stellen Sie sich vor, Sie messen tagsüber alle 10 Minuten die Temperatur. Ihre Aufzeichnungen könnten in einer Tabelle gespeichert werden; Aufzeichnungen über die Niederschlagsmenge pro Stunde könnten in einer anderen Tabelle in derselben Datenbank gespeichert werden. Auf diese Weise können relationale Datenbanken sehr flexibel sein.

SQL-Datenbanken

Wir haben ein wenig Vorarbeit geleistet, um zu verstehen, was eine SQL-Datenbank ist.

Der Begriff SQL-Datenbank ist mehr oder weniger ein Synonym für eine relationale Datenbank. Es handelt sich um eine Datenbank mit derselben Struktur, die wir oben beschrieben haben; sie besteht aus einer oder mehreren Tabellen, die Daten enthalten.

Relationale Datenbanken werden SQL-Datenbanken genannt, weil SQL die Sprache ist, die für die Kommunikation mit relationalen Datenbanken entwickelt wurde. Das bedeutet, dass die SQL-Sprache verwendet wird, um auf die Daten in einer SQL-Datenbank zuzugreifen und sie zu ändern. Aus diesem Grund wurde die Sprache ursprünglich entwickelt, wie wir in unserem Artikel Was ist SQL? erläutert haben.

Eine SQL-Datenbank wird in der Regel mit SQL erstellt und ist so konzipiert, dass sie optimal funktioniert, wenn die SQL-Sprache zur Verwaltung der Daten darin verwendet wird. Mit einer SQL-Datenbank können Sie die intuitive und leicht zu erlernende Syntax von SQL verwenden, um die Vorteile der erweiterten Funktionen der Datenbank zu nutzen und große Datenmengen und viele Benutzer zu verwalten.

SQL wurde für relationale Datenbanken entwickelt, wird aber heutzutage auch für viele andere Datentechnologien verwendet. Weitere Informationen finden Sie in unserem Artikel SQL-Technologien sind weiter verbreitet als Sie denken.

SQL-Datenbank-Optionen

Es gibt eine Reihe von Softwareprodukten, mit denen Sie eine SQL-Datenbank erstellen und verwalten können. Wenn Sie in einem Team arbeiten, können Sie sich wahrscheinlich nicht aussuchen, mit welcher Datenbank Sie arbeiten. Es ist jedoch wichtig zu wissen, welche Optionen zur Verfügung stehen und wann sie verwendet werden sollten. In unserem Artikel Wozu wird SQL verwendet? gehen wir etwas ausführlicher darauf ein, wie verschiedene Personen SQL-Datenbanken nutzen.

Eines der beliebtesten Produkte ist MySQL. Es wird in der Regel auf einem externen Server ausgeführt, d. h. Sie müssen sich erst mit dem Server verbinden, um die Daten nutzen zu können.

SQLite hingegen ist für kleinere Projekte geeignet, bei denen eine Datenbank auf Ihrem lokalen Rechner ausreicht. Dies ist eine gute Option für Anfänger, um ein wenig Erfahrung mit SQL-Datenbanken zu sammeln.

SQL Server ist ein weiteres sehr beliebtes Datenbankmanagementsystem. Es ist eine benutzerfreundliche Lösung, die sich gut für Situationen mit komplexeren Anforderungen eignet. Allerdings müssen Sie für die Nutzung bezahlen.

PostgreSQL, auch bekannt als Postgres, ist eine weitere kostenlose Option. Es handelt sich um eine sehr ausgereifte und beliebte Lösung, die mit mehreren Datenformaten umgehen kann.

Das letzte Datenbanksystem, das wir erwähnen, ist Oracle. Es wird häufig für Online-Transaktionsverarbeitung und Data Warehousing verwendet. Allerdings ist es nicht besonders anfängerfreundlich.

Zeit, SQL zu lernen

In diesem Artikel haben wir über relationale Datenbanken gesprochen und darüber, wie man mit SQL mit den in einer Datenbank gespeicherten Daten arbeiten kann. Wir möchten Sie ermutigen, den nächsten Schritt zu tun und SQL zu lernen. Einige Tipps dazu finden Sie in unserem Artikel Wie Sie SQL schnell lernen. Dies kann dann eine weitere Programmiersprache werden, die Sie in Ihren Lebenslauf für Ihre nächste Bewerbung aufnehmen können. Und ja, SQL ist eine Programmiersprache; wir erklären die Gründe dafür in Ist SQL eine Programmiersprache?