Mittwoch, 2025-10-08_Datenbanken_KNO¶
Datenbanksprache SQL anwenden¶
0. Hintergrundgeschichte¶
- Entstehung und Zweck von SQL
- Bedeutung für relationale Datenbanken
SQL = Structured Query Language
→ Weitverbreitete Sprache zur Arbeit mit relationalen Datenbanken.
Entwickelt Anfang der 1970er Jahre auf Basis des relationalen Modells von Edgar F. Codd.
SQL ist eine Standardsprache (ANSI / ISO) für relationale Datenbanksysteme.
Es existieren jedoch verschiedene Dialekte, z. B.: - MySQL - PostgreSQL - Oracle SQL - Microsoft SQL Server
Sprachbereiche von SQL¶
-
DDL (Data Definition Language)
→ Definition von Strukturen
→CREATE,ALTER,DROP -
DML (Data Manipulation Language)
→ Manipulation von Daten
→INSERT,UPDATE,DELETE -
DQL (Data Query Language)
→ Abfrage von Daten
→SELECT -
DCL (Data Control Language)
→ Zugriffsrechte
→GRANT,REVOKE -
TCL (Transaction Control Language)
→ Steuerung von Transaktionen
→COMMIT,ROLLBACK
1. Syntaktische Grundlagen und Operatoren¶
Grundstruktur einer Abfrage:
SELECT Spalten
FROM Tabelle
WHERE Bedingung;
Vergleichsoperatoren¶
=, <>, <, >, <=, >=
Logische Operatoren¶
AND, OR, NOT
Arithmetische Operatoren¶
+, -, *, /
Datentypen in SQL (Übersicht)¶
Numerische Datentypen¶
INT/INTEGER– Ganze ZahlSMALLINT– Kleinere ganze ZahlBIGINT– Sehr große ganze ZahlDECIMAL(p,s)/NUMERIC(p,s)– Feste Genauigkeit (z. B. Geldwerte)FLOAT,REAL,DOUBLE PRECISION– Gleitkommazahlen
Zeichenketten¶
CHAR(n)– Feste LängeVARCHAR(n)– Variable LängeTEXT– Lange Texte
Datums- und Zeittypen¶
DATE– Datum (YYYY-MM-DD)TIME– Uhrzeit (HH:MM:SS)DATETIME– Datum + ZeitTIMESTAMP– ZeitstempelYEAR– Jahresangabe
Logische Datentypen¶
BOOLEAN/BOOL– TRUE oder FALSE- In manchen Systemen intern als
TINYINT(1)gespeichert
Binäre Datentypen¶
BINARY(n)– Feste LängeVARBINARY(n)– Variable LängeBLOB– Große binäre Objekte
Weitere systemabhängige Typen¶
ENUM(...)SET(...)JSONUUID
2. Tabellen anlegen, ändern und löschen¶
CREATE TABLEALTER TABLEDROP TABLE
3. Datensätze verwalten¶
INSERT INTO– neue Daten hinzufügenUPDATE– vorhandene Daten ändernDELETE FROM– Daten löschen
4. Daten abfragen¶
SELECT *
FROM kunden;
→ Gibt alle Spalten der Tabelle kunden zurück.