DDL-SQL
Aus FI-Wiki
Data Definition Language (DDL) in SQL
Die DDL (Data Definition Language) dient zur Erstellung, Veränderung und Löschung von Datenbankstrukturen wie Tabellen, Sichten und Indizes. Sie wird in der Regel einmalig beim Datenbankentwurf verwendet.
CREATE DATABASE
Legt eine neue Datenbank an.
CREATE DATABASE firmenverwaltung;
Datenbank auswählen (je nach SQL-Dialekt, z. B. MySQL):
USE firmenverwaltung;
Optional mit Zeichensatz und Kollation:
CREATE DATABASE firmenverwaltung CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE TABLE
Erzeugt eine neue Tabelle in der Datenbank.
CREATE TABLE kunde (
kundennr INT PRIMARY KEY,
name VARCHAR(50),
email VARCHAR(100),
telefon VARCHAR(20)
);
CREATE TABLE bestellung (
bestellnr INT PRIMARY KEY,
datum DATE,
gesamtbetrag DECIMAL(10,2),
kundennr INT,
FOREIGN KEY (kundennr) REFERENCES kunde(kundennr)
);
ALTER TABLE
Verändert eine bestehende Tabelle – z. B. Spalten hinzufügen, ändern oder löschen.
Spalte hinzufügen:
ALTER TABLE kunde
ADD geburtsdatum DATE;
Spalte löschen:
ALTER TABLE kunde
DROP COLUMN telefon;
Spalte umbenennen (syntaxabhängig, z. B. MySQL):
ALTER TABLE kunde
CHANGE name vorname VARCHAR(50);
DROP TABLE
Löscht eine Tabelle vollständig und unwiderruflich.
DROP TABLE bestellung;
CONSTRAINTS (Einschränkungen)
Definieren Regeln für Spalten.
Beispiele:
- PRIMARY KEY – Eindeutige Identifikation
- FOREIGN KEY – Referenz auf andere Tabelle
- NOT NULL – Wert muss angegeben werden
- UNIQUE – Jeder Wert muss eindeutig sein
- CHECK – Bedingung muss erfüllt sein
CREATE TABLE produkt (
produktnr INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
preis DECIMAL(10,2) CHECK (preis > 0)
);
CREATE INDEX
Erstellt einen Index zur Verbesserung der Abfragegeschwindigkeit.
CREATE INDEX idx_kunde_name
ON kunde(name);