SQL ist die Abkürzung von „Structured Query Language“. Das schreibt aber niemand so hin. Man spricht immer nur von SQL. SQL wurde in den 1970er Jahren entwickelt, um eben eine standardisierte Möglichkeit zu kriegen, um kleine und grosse Datenmengen auszuwerten.
Mit SQL werden einerseits Daten in relationalen Datenbanken abgefragt und verändert, aber auch die Datenbankstruktur erstellt und angepasst.
SQL-Befehle können in folgende Typen eingeteilt werden:
Mit diesen Befehlen erstellt, verändert und löscht man Objekte in einer relationalen Datenbank.
Beispiele sind:
CREATE TABLE tblKunden; CREATE INDEX idxName ON tblKunden (tNachname); ALTER TABLE tblKunden ADD COLUMN (tGeburtsdatum DATE); DROP TABLE tblKunden;
Aufgepasst! Ein Rückgängig gibt es SQL-Befehlen nicht!
Diese Befehle werden in der Regel nur einmalig bei der Erstellung von Datenbank-Systemen, z.B. zum Erstellen einer Kundendatenbank benötigt. Es kann aber auch sein, dass man die Datenbank-Struktur anpassen muss:
Diese Befehle nehmen keine Änderungen vor (drum kann man nix kaputtmachen😅), sondern dienen lediglich als Abfrage von Daten. Man gibt der Datenbank den Auftrag, eine gewisse Teilmenge der Daten zurückzuliefern (je nach Kriterium, das einen interessiert).
Der Befehl, welcher hier verwendet wird, lautet SELECT. Hier ein Beispiel:
SELECT tNachname, tVorname, tOrt FROM tblKunden WHERE tLand = 'CH';
Der SELECT-Befehl ist wohl der am häufigsten verwendete Befehl in SQL. Und das ist auch der Befehl, mit dem wir in diesem Kurs arbeiten.
Als Anwender*in einer Datenbank benötigt man diesen Befehl allenfalls täglich, weil die Chefin wieder irgendeine kuriose Auswertung von uns wünscht.
Es kann auch sein, dass wir ein Frontend zur Verfügung haben (ein GUI), das uns ermöglicht, einfacher Auswertungen zu erstellen, als direkt mit SQL-Befehlen.
Diese Befehle ändern den Inhalt von Tabellen. Man kann beispielsweise Datensätze hinzufügen, ändern oder löschen.
INSERT INTO tblKunden (tNachname, tVorname, tOrt) VALUES ('Müller', 'Susi', 'Bern'); UPDATE tblKunden SET tOrt = 'Spiez' WHERE ID = 55; DELETE FROM tblKunden WHERE tOrt = 'Spiez';
Diese Befehle benötigt man recht häufig, wenn man in der Kundendatenbank neue Kund*innen anlegen will, einige ändern oder andere löschen will.
Häufig hat man mit den eigentlichen SQL-Befehlen aber nichts zu tun, weil man für die Mutation der Kunden ein sog. "Frontend" entwickelt hat (z.B. eine Webseite, auf der man diese Anpassungen machen kann).
Wenn Sie aber in einem Kundenauftrag eine Applikation entwickeln müssen, welche irgendwelche Daten bearbeitet, dann haben die Anwender*innen zwar nichts mit SQL zu tun. Aber Sie als Entwickler*in greifen mit SQL auf die Daten zu.
In diesem Kurs geht es ausschliesslich um die Auswertung grosser Datenmegen, das heisst, Sie lernen den Einsatz der DQL.
Interessieren Sie sich für die anderen Aspekte, können Sie im Wahlmodul den nächsten Kurs zu Datenbanken wählen.