Structured Query Language (SQL)
Sie sind hier: Startseite › Structured Query Language › Allgemein
CM, 01.09.2001
SQL - strukturierte Abfragesprache
SQL ist eine nichtprozedurale, mengenorientierte Datenbanksprache.
- nichtprozedural: Was statt wie - welche Daten abzurufen, zu löschen oder einzufügen sind, nicht wie.
- mengenorientiert: Verarbeitung der Datenmengen in Gruppen.
SQL wurde für die Bedienung von relationalen Datenbanken entwickelt und ermöglicht folgende Aufgaben:
- Modifizierung einer Datenbankstruktur
- Änderung der Systemsicherheitseinstellungen
- Einrichtung von Benutzerberechtigungen für Datenbanken oder Tabellen
- Abfrage von Datenbankinformationen
- Aktualisierung von Datenbankinhalten
Mit SQL kann man nur Datenbanken programmieren, die SQL auch unterstützen. Dazu gehören u.a. Microsoft Access, Oracle, Sybase und Informix. (Geringe Anpassungen sind dabei nötig.)
Allgemeines
Hier kommt das Q aus Query (Abfrage) ins Spiel. Allgemein ist zu sagen, dass die Syntax in SQL relativ flexibel ist. Bestimmte Regeln müssen aber wie in jeder Programmiersprache berücksichtigt werden:
- Groß-/Kleinschreibung
- Leerzeichen
- Schlüsselwörter
Die eigentlichen SQL-Anweisungen sind nicht von der Groß-/Kleinschreibung abhängig. Sobald jedoch ein direkter Bezug zu Datenbankinhalten gebildet werden soll, ist die Schreibweise genau einzuhalten.
Ebenfalls von Bedeutung ist das am Ende jeder Anweisung stehende Semikolon, welches anzeigt, dass eine Abfrage vollständig ist.
Das Wesentliche einer SQL-Anweisung sind jedoch die Schlüsselwörter.
Dieses Beispiel zeigt drei Varianten bezüglich der
Schreibweise von Schlüsselwörtern.
Variante 1: select ... from ... where
Variante 2: Select ... From ... Where
Variante 3: SELECT ... FROM ... WHERE
Alle drei Schreibweisen funktionieren.
SQL-Schlüsselwörter
beziehen sich auf einzelne SQL-Elemente (select
und from
). Eine
Klausel ist ein Bestandteil
einer SQL-Anweisung
(select Spalte1, Spalte2,...
).
SQL-Klauseln
bilden im Zusammenhang eine vollständige SQL-Anweisung
(select-Klausel kombiniert mit
from-Klausel).
In Hinblick auf die optische Gestaltung ist SQL flexibel. Der Übersichtlichkeit halber sollte man aber eine bestimmte Struktur finden und einhalten.
select from
Grundbausteine der Datenabfrage.
Ausgabe der angegebenen Spalteninhalte der genannten
Tabelle:
SELECT <Spaltenname>
FROM
<Tabelle>;
Sollen alle Spalten einer Tabelle angezeigt werden, so ersetzt man
select
<Spaltenname>
durch select
*
.
Beispiel: Ausgabe aller Spalten der in from-Klausel angegebenen Tabelle
"Test"
SELECT *
FROM Test;
Die Reihenfolge der Ausgabespalten entspricht der Datenbankdarstellung. Soll eine eigene Spaltenabfolge festgelegt werden, so ist diese (durch Kommas getrennt) anstelle <Spaltenname> zu notieren.
Beispiel: Ausgabe der Spalten "Spalte3",
"Spalte1" und "Spalte2" (in dieser
Reihenfolge!).
SELECT Spalte3, Spalte1, Spalte2
FROM Test;
Für den Fall, das Werte in einer Tabelle mehrfach
vorkommen, gibt es DISTINCT
.
Beispiel: Ausgabe Spalte3 ohne doppelte Werte
SELECT DISTINCT Spalte3
FROM
Test;