SQL (structured query language)

Structured Query Language (SQL) ist eine spezialisierte Programmiersprache für den Zugriff auf Datenbanksysteme. Obwohl SQL bereits um 1974 entwickelt worden ist, bleibt sie auch heute noch der De-facto-Standard für die Definition und den Zugriff auf strukturierte Daten. Die Sprache SQL ist, im Gegensatz zu den allermeisten Programmiersprachen, nicht prozessorientiert, sondern deklarativ.


1970 publizierte Dr. E. F. Codd die Schrift "A Relational Model of Data for Large Shared Data Banks". Diese Publikation gilt als Geburtsstunde relationaler Datenbanksysteme. Dr. Codds Kollegen Donald D. Chamberlin und Raymond F. Boyce von IBM entwickelten dazu eine Programmiersprache die sie 1974 in der Publikation "SEQUEL: A Structured English Query Language" veröffentlichten.

Aus SEQUEL wurde SQL und langsam verbreitete sich die Programmiersprache. 1979 wurde von Relational Software Inc. unter dem Namen Oracle V2 das erste kommerzielle SQL-Datenbanksystem veröffentlicht.

SQL wurde 1986 von ANSI standardisiert und 1987 von der internationalen Standardisierungs-Organisation (ISO) ratifiziert. Seither hat es mehrere Revisionen gegeben. Die bekannteste ist SQL-92, die aktuellste SQL:2008.

Im Gegensatz zu den allermeisten Programmiersprachen ist SQL nicht prozessorientiert sondern deklarativ, d.h. sie beschreibt was zu tun ist und nicht wie es zu tun ist. Ebenfalls außergewöhnlich ist, dass SQL auf der Mengenlehre basiert. Aufgrund dieser Eigenschaften ist SQL bis heute die Standardsprache für den Zugriff auf relational strukturierte Daten geblieben.

Innerhalb von SQL wird historisch zwischen drei Subsprachen unterschieden:

  • Data Definition Language (DDL): Definition der Datenstrukturen. Beispiel: CREATE TABLE.
  • Data Manipulation Language (DML): Veränderung und Abfrage von Daten. Beispiele: SELECT, INSERT, UPDATE, DELETE.
  • Data Control Language (DCL): Rechte und Kontrollmechanismen. Beispiele: GRANT, REVOKE.
Beispiel einer einfachen SQL-Abfrage mit SELECT und dem resultierenden Recordset

Beispiel einer einfachen SQL-Abfrage mit SELECT und dem resultierenden Recordset

Heute ist diese Einteilung durch die vielen zusätzlichen Definitionen und Ergänzungen (prozedurale und OO Elemente, Extensible Markup Language (XML),…) nicht mehr strikt. Der wichtigste Befehl von SQL ist SELECT. Mit ihm lassen sich komplexe Abfragen von großen Datenmangen erstellen. Das Resultat ist ein sogenanntes Recordset, eine Liste von Datensätzen.

Informationen zum Artikel
Deutsch:
Englisch: structured query language - SQL
Veröffentlicht: 23.04.2013
Wörter: 318
Tags: #Programmiersprachen
Links: ANSI (American national standards institute), Befehl, Datensatz, De-facto-Standard, ISO (international organization for standardization)