Im Bereich der Relationalen Datenbanksysteme hat sich eine Abfragesprache auf breiter Front durchgesetzt, die Structured Query Language (SQL). Ein Grund ist, dass sie mehr ist als nur eine Abfragesprache. Sie ist eine umfassende befehlsorientierte formale Sprache für die Einrichtung und den Betrieb Relationaler Datenbanken.

SQL ist befehlsorientiert, d.h. der Nutzer gibt mittels reservierter Wörter in einer bestimmten Syntax die Befehle ein. Es gibt als keine grafische Bedienoberfläche mit Pull down - Menüs, usw.

Befehlsorientiert

SQL bezieht sich ganz auf Relationen, wie sie in Relationalen Datenbanken definiert sind. D.h., SQL verarbeitet nur Relationen und gibt, wenn es um Daten geht, nur Relationen oder Tabellen aus.

Relationen, nix als Relationen

Beschäftigt man sich mit SQL, stößt man auf verschiedene Bezeichnungen. Hier die wichtigsten:

SQL92usw

  • ANSI SQL. ANSI bedeutet American National Standards Institute. Dieses hat im Jahr 1986 zum ersten Mal einen Standard zu SQL veröffentlicht (SQL86), der 1989 (SQL89) und 1992 (SQL92) erneuert wurde. Die meisten Hersteller von Datenbanksystemen orientieren sich heute an ANSI SQL92.
  • Im Jahr 1999 wurde SQL99 (von ANSI und ISO[1]) vorgelegt.
  • Einzelne Datenbanksysteme erstellten für ihre SQL-Variante Ergänzungen für den Einsatz in Programmen. Bei Oracle ist dies PL/SQL (procedural language extension to SQL).
  • Einzelne Datenbanksystemhersteller, z.B. die Oracle Inc., nutzen eine Obermenge von SQL99 in ihrer SQL-Version.

Wir halten uns in diesem Text an den ANSI-Standard.

1.1 Aufbau

Dieser Text enthält eine Einführung in SQL entlang eines Beispiels, mit dem alle für das Einrichten und Abfragen einer Datenbank notwendigen Befehle kennengelernt werden. Die Einführung ist so aufgebaut, dass sie Schritt für Schritt mit einem Datenbanksystem nachvollzogen werden kann.

SQL ist im Kernbereich standardisiert, trotzdem gibt es kleine Unterschiede zwischen den verschiedenen Datenbanksystemen. Es könnte somit sein, dass beim Nachvollzug der Beispiele kleine Anpassungen notwendig sind. Dabei hilft das Handbuch oder auch die Hilfefunktion des jeweiligen Datenbanksystems.

1.2 Konkrete Arbeit

Die konkrete Arbeit mit SQL sieht meist so aus, dass nach dem Start des interaktiven SQL ein Fenster zur Eingabe der Befehle geöffnet wird. Diese Befehle können in Dateien abgespeichert werden. Ebenso die Ergebnisse der Befehlsabarbeitung, die in einem eigenen Fenster angezeigt werden. Zwischen diesem Ausgabefenster und dem Befehlsfenster kann hin und her gewechselt werden.

Die Abspeicherung der Eingaben in Dateien ist v.a. dann sinnvoll, wenn die Befehle immer wieder benötigt werden.