SQL: Unterschied zwischen den Versionen
K Textersetzung - „z. B. “ durch „z. B. “ |
K Textersetzung - „Man-Pages“ durch „Man-Page“ |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''topic''' | '''topic''' - Kurzbeschreibung | ||
==Beschreibung== | ==Beschreibung== | ||
'''SQL''' (offizielle Aussprache [<nowiki/>{{IPA|ɛskjuːˈɛl}}], mitunter auch [<nowiki/>{{IPA|ˈsiːkwəl}}]; auf Deutsch auch häufig die deutsche Aussprache der Buchstaben) ist eine [[Datenbanksprache]] zur Definition von [[Datenstruktur]]en in [[Relationale Datenbank|relationalen Datenbanken]] sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen. | '''SQL''' (offizielle Aussprache [<nowiki/>{{IPA|ɛskjuːˈɛl}}], mitunter auch [<nowiki/>{{IPA|ˈsiːkwəl}}]; auf Deutsch auch häufig die deutsche Aussprache der Buchstaben) ist eine [[Datenbanksprache]] zur Definition von [[Datenstruktur]]en in [[Relationale Datenbank|relationalen Datenbanken]] sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen. | ||
Zeile 63: | Zeile 63: | ||
==Dokumentation== | ==Dokumentation== | ||
===RFC=== | ===RFC=== | ||
===Man- | ===Man-Page=== | ||
===Info-Pages=== | ===Info-Pages=== | ||
==Siehe auch== | ==Siehe auch== |
Aktuelle Version vom 6. November 2024, 12:51 Uhr
topic - Kurzbeschreibung
Beschreibung
SQL (offizielle Aussprache [Vorlage:IPA], mitunter auch [Vorlage:IPA]; auf Deutsch auch häufig die deutsche Aussprache der Buchstaben) ist eine Datenbanksprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen.
Die Sprache basiert auf der relationalen Algebra, ihre Syntax ist relativ einfach aufgebaut und semantisch an die englische Umgangssprache angelehnt. Ein gemeinsames Gremium von ISO und IEC standardisiert die Sprache unter Mitwirkung nationaler Normungsgremien wie ANSI oder DIN. Durch den Einsatz von SQL strebt man die Unabhängigkeit der Anwendungen vom eingesetzten Datenbankmanagementsystem an.
Die Bezeichnung SQL wird im allgemeinen Sprachgebrauch als Abkürzung für „Structured Query Language“ (auf Deutsch: „Strukturierte Abfrage-Sprache“) aufgefasst, obwohl sie laut Standard ein eigenständiger Name ist. Die Bezeichnung leitet sich von dem Vorgänger SEQUEL ([[[:Vorlage:IPA]]], Structured English Query Language) ab, welche mit Beteiligung von Edgar F. Codd (IBM) in den 1970er Jahren von Donald D. Chamberlin und Raymond F. Boyce entwickelt wurde. SEQUEL wurde später in SQL umbenannt, weil SEQUEL ein eingetragenes Warenzeichen der Hawker Siddeley Aircraft Company ist.[1]
Sprachelemente
SQL-Befehle lassen sich in fünf Kategorien unterteilen (Zuordnung nach der Theorie der Datenbanksprachen in Klammern):
- Data Query Language (DQL) – Befehle zur Abfrage und Aufbereitung der gesuchten Informationen, wird auch als Untermenge der DML klassifiziert
- Data Manipulation Language (DML) – Befehle zur Datenmanipulation (Ändern, Einfügen, Löschen von Datensätzen) und lesendem Zugriff
- Data Definition Language (DDL) – Befehle zur Definition des Datenbankschemas (Erzeugen, Ändern, Löschen von Datenbanktabellen, Definition von Primärschlüsseln und Fremdschlüsseln)
- Data Control Language (DCL) – Befehle für die Rechteverwaltung
- Transaction Control Language (TCL) – Befehle für die Transaktionskontrolle
Die Bezeichnung SQL bezieht sich auf das englische Wort Vorlage:". Mit Abfragen werden die in einer Datenbank gespeicherten Daten abgerufen, also dem Benutzer oder einer Anwendersoftware zur Verfügung gestellt.
Das Ergebnis einer Abfrage sieht wiederum aus wie eine Tabelle und kann oft auch wie eine Tabelle angezeigt, bearbeitet und weiterverwendet werden. Vorlage:Siehe auch
Chronologie
Jahr | Beschreibung |
---|---|
1975 | SEQUEL = Structured English Query Language, der Vorläufer von SQL, wird für das Projekt System R von IBM entwickelt. |
1979 | SQL gelangt mit Oracle V2 erstmals durch Relational Software Inc. auf den Markt. |
1986 | SQL1 wird von ANSI als Standard verabschiedet. |
1987 | SQL1 wird von der Internationalen Organisation für Normung (ISO) als Standard verabschiedet und 1989 nochmals überarbeitet. |
1992 | Der Standard SQL2 oder SQL-92 wird von der ISO verabschiedet. |
1999 | SQL3 oder SQL:1999 wird verabschiedet. Im Rahmen dieser Überarbeitung werden weitere wichtige Features (wie etwa Trigger oder rekursive Abfragen) hinzugefügt. |
2003 | SQL:2003. Als neue Features werden aufgenommen SQL/XML, Window functions, Sequences. |
2006 | SQL/XML:2006. Erweiterungen für SQL/XML[2]. |
2008 | SQL:2008 bzw. ISO/IEC 9075:2008. Als neue Features werden aufgenommen INSTEAD OF-Trigger, TRUNCATE-Statement und FETCH Klausel. |
2011 | SQL:2011 bzw. ISO/IEC 9075:2011. Als neue Features werden aufgenommen „Zeitbezogene Daten“ (PERIOD FOR). Es gibt Erweiterungen für Window functions und die FETCH Klausel. |
2016 | SQL:2016 bzw. ISO/IEC 9075:2016. Als neue Features werden aufgenommen JSON und „row pattern matching“. |
2019 | SQL/MDA:2019. Erweiterungen für einen Datentyp „mehrdimensionales Feld“. |
Syntax
Sicherheit
Dokumentation
RFC
Man-Page
Info-Pages
Siehe auch
- Data Manipulation Language
- Data Definition Language
- Data Control Language
- Transaction Control Language
- SQL-Injection
- SchemaSQL
- Continuous Query Language
- Liste der Datenbankmanagementsysteme
- Bereichsabfrage
Links
Projekt-Homepage
Weblinks
- Erklärvideos zu SQL, Big Data Analytics Group, Uni Saarland
- Vorlage:Dmoz
- SQL-Grundlagen – Einführung mit Beispielen und Vergleich diverser Datenbanken
- Merkblatt SQL
- The 1995 SQL Reunion: People, Projects, and Politics – zur frühen Geschichte von SQL (englisch)
- Frei verfügbare SQL-Standard-Dokumente, z. B. SQL:2003 und SQL:2008 (englisch)
- SQL-Tutorial
- GNU SQLTutor
- SQLcoach – Freies Üben von SQL
- Interaktiver SQL-Trainer (Anmeldung notwendig)
- Blogbeitrag zu SQL-Befehlen und deren Einsatz in PHP
- SQL Tuning
- Transact-SQL Reference (Database Engine)
Einzelnachweise
Testfragen
Testfrage 1
Testfrage 2
Testfrage 3
Testfrage 4
Testfrage 5