Die Structured Query Language, kurz SQL, ist eine Abfragesprache für die Kommunikation mit relationalen Datenbanken. Mit SQL-Befehlen lassen sich Daten relativ einfach einfügen, verändern oder löschen.
Die meisten der existierenden Datenbanksysteme verfügen über SQL-Schnittstellen.
(Bild: alphaspirit - Fotolia.com)
Die Grundzüge von SQL
Die Datenbanksprache SQL zeichnet sich durch ihre einfach gehaltene Syntax aus und basiert auf der relationalen Algebra. Sie besteht semantisch im Wesentlichen aus englischen Sprachelementen. SQL ist standardisiert und kann plattformübergreifend mit vielen Datenbanksystemen genutzt werden. Allerdings verhindern die verschiedenen bestehenden SQL-Dialekte und -Implementierungen eine hundertprozentige Kompatibilität.
Die meisten der existierenden Datenbanksysteme verfügen über SQL-Schnittstellen und ermöglichen den Zugang zu den gespeicherten Daten über die universelle Structured Query Langurage. Die eigentlichen SQL-Abfragen sind mit wenig Aufwand zu bewerkstelligen, da für einen Großteil der Anweisungen nur wenige unterschiedliche Befehle bekannt sein müssen.
Die verschiedenen Kategorien der SQL-Befehle
Neben Befehlen zum Anlegen, Bearbeiten und Löschen von Daten besitzt SQL Elemente für die Definition von Datenstrukturen und zur Abfrage von Datenbeständen. Grundsätzlich kann zwischen drei verschiedenen Kategorien von SQL-Befehlen unterschieden werden. Diese Kategorien sind:
DML-Befehle (Data Manipulation Language): Für den lesenden Zugriff auf eine Datenbank und zum Bearbeiten, Einfügen oder Löschen von Daten.
DDL-Befehle (Data Definition Language): Zur Definition des Schemas einer Datenbank
DCL-Befehle (Data Control Language): Zur Verwaltung einzelner Rechte und Kontrolle von Transaktionen
Datenabfragen erfolgen mit dem Befehl „SELECT“, dem weitere Befehle wie „FROM“ oder „WHERE“ folgen. Dabei kann SQL das Abfrageergebnis in Tabellenform ausgeben und die Daten als neue Tabelle weiterverarbeiten.
Beispiele für SQL-Befehle der verschiedenen Kategorien
Im Folgenden einige Befehlsbeispiele aus den verschiedenen SQL-Kategorien.
Wichtige DML-Befehle sind:
SELECT FROM ... für das Lesen, …
DELETE FROM ... für das Löschen und …
INSERT INTO ... für das Einfügen von Daten in Tabellen sowie
UPDATE … für das nachträgliche Ändern und …
MERGE … für das Zusammenführen von Daten.
Wichtige DDL-Befehle
CREATE TABLE ... - für das Anlegen und …
ALTER TABLE ... zum Ändern von Tabellen, …
CREATE VIEW ... zum Anlegen einer sogenannten Sicht.
Wichtige DCL-Befehle
GRANT ON TO ... für die Weitergabe von Rechten an einer Tabelle zu einem bestimmten User
REVOKE ... für das Widerrufen von Rechten
Standard-Datentypen in SQL
Mit Befehlen wie „CREATE TABLE“ oder „ALTER TABLE“ lassen sich per SQL Tabellen und Spalten anlegen, für die jeweils ein Datentyp zu definieren ist. Zu diesem Zweck sind in SQL viele verschiedene Datentypen vorgesehen. Wichtige Datentypen sind beispielsweise:
Integer für ganze Zahlen
Numeric und Decimal für Festkommazahlen
Float, Real und Double für Gleitkommazahlen
Charakter und Text für Zeichenketten
Date und Time für Datums- und Zeitangaben
diverse Binärformate wie Blob
Neben den Standarddatentypen wie bietet SQL weitere Datentypen wie boolean, enum, json oder array, die je nach Datenbanksystem unterstützt werden. Diese Datentypen dienen der Typüberprüfung und Optimierung der Datenspeicherung.
Programmieren mit SQL
Bei SQL handelt es sich um keine vollwertige Programmiersprache, mit der Datenbanksprache können also keine vollständigen Programme erstellt werden. Allerdings lässt sich SQL sehr gut mit anderen Programmiersprachen wie Java, C# oder auch Python kombinieren.
Ebenso lässt sich SQL in Programme einbetten. Hierfür kommen verschiedene Techniken wie Embedded SQL, Programmierschnittstellen (APIs) oder Frameworks zum Einsatz. Bei den SQL-Befehlen kann zwischen dynamischem und statischem SQL unterschieden werden:
Statische SQL-Anweisungen sind bereits vor der Kompilierung des Programms festgelegt.
Dynamische SQL-Anweisungen sind hingegen erst direkt zum Zeitpunkt der Programmausführung bekannt. Dadurch müssen die SQL-Anweisungen direkt zur Laufzeit der Programme durch das Datenbanksystem interpretiert werden.
SQL im Zusammenspiel mit PHP
Ein weit verbreitetes Anwendungsgebiet von SQL ist die Verwendung zusammen mit der Skriptsprache PHP (Hypertext Preprocessor). Der Großteil der im World Wide Web erreichbaren Internetauftritte, Onlineshops und Internetservices basiert auf der Kombination von PHP-Anweisungen und SQL-Datenbanken.
Beispielsweise nutzen fast alle gängigen Content-Management-Systeme (CMS) wie WordPress diese Technik, um Webinhalte dynamisch zu erzeugen. Hierfür werden auf dem Webserver PHP-Skripte abgelegt, die der Anwender mit seinem Browser aufruft. Ist ein PHP-Dokument angefordert, führt der Webserver das Skript mit Hilfe seines PHP-Interpreters aus.
Im PHP-Code befinden sich auch SQL-Befehle, mit denen auf die Inhalte einer auf dem Server hinterlegten Datenbank zugegriffen werden kann. Der Webserver erzeugt mit den PHP-Befehlen und den Inhalten aus der SQL-Datenbank eine HTML-Seite, die der Browser des Anwenders lädt und anzeigt.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Datenbank-Administration mit SQL
Mit speziellen SQL-Befehlen lassen sich überdies administrative Aufgaben wie Backups, Wiederherstellung, Benutzerverwaltung und Überwachung realisieren. Der Zugang und die Sicherheit für Anwendungen und Benutzer geregelt wird mittels Rollen und Berechtigungen geregelt.
Einige Beispiele für administrative SQL-Befehle sind:
BACKUP DATABASE – zum Sichern einer gesamten Datenbank
RESTORE DATABASE – für das Wiederherstellen einer Datenbanksicherung
CREATE USER / DROP USER – Anlegen und Löschen von Datenbankbenutzern
ALTER USER – zum Ändern von Benutzerkonten und Berechtigungen
CREATE/DROP INDEX – dient dem Anlegen und Löschen von Indizes
SHOW PROCESSLIST – listet alle aktiven Datenbankverbindungen
ANALYZE TABLE – für die Analyse und Optimierung von Tabellen