Mittel
DDL: CREATE, ALTER, DROP
Tabellen und Constraints anlegen und ändern – häufig Teil der Datenbankaufgabe.
Warum Priorität „Mittel"? Gelegentlich Teil der Prüfung (40–59%). Verstehen, aber nicht überinvestieren.
Lernziele
- Tabellen mit CREATE TABLE inkl. Constraints anlegen
- Mit ALTER TABLE Spalten hinzufügen/ändern
- Constraints (PK, FK, UNIQUE, CHECK, NOT NULL) korrekt setzen
CREATE TABLE
sql
CREATE TABLE kunde (
id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(255) UNIQUE,
alter INT CHECK (alter >= 18),
stadt VARCHAR(100) DEFAULT 'unbekannt'
);Fremdschlüssel
sql
CREATE TABLE bestellung (
id INT PRIMARY KEY,
kunde_id INT NOT NULL,
datum DATE NOT NULL,
CONSTRAINT fk_kunde
FOREIGN KEY (kunde_id) REFERENCES kunde(id)
ON DELETE RESTRICT
ON UPDATE CASCADE
);ALTER TABLE
sql
ALTER TABLE kunde ADD COLUMN telefon VARCHAR(30);
ALTER TABLE kunde DROP COLUMN alter;
ALTER TABLE kunde ALTER COLUMN name TYPE VARCHAR(200); -- Syntax je DBMSDROP
sql
DROP TABLE IF EXISTS bestellung;Constraint-Arten
- PRIMARY KEY – eindeutiger, nicht-NULL-Bezeichner der Zeile.
- FOREIGN KEY – Verweis auf PK anderer Tabelle.
- UNIQUE – eindeutig, aber NULL erlaubt (je nach DBMS einmal).
- NOT NULL – Spalte darf nicht leer sein.
- CHECK (…) – beliebige Bedingung.
- DEFAULT <wert> – Default-Wert.
Übungen
SQL-ÜbungLege eine Tabelle `artikel` an: id (PK), bezeichnung (VARCHAR 100, NOT NULL), preis (DECIMAL(10,2), CHECK >= 0).
Eine AntwortUnterschied PRIMARY KEY vs. UNIQUE?