# 7.3 Datentypen und Constraints

**Definition**

**Datentypen** legen fest, welche Art von Daten in einer Spalte gespeichert werden darf.

**Constraints** sind Regeln, die die Daten in einer Tabelle einschränken oder absichern.

---

**Wichtige Datentypen**

| Datentyp | Bedeutung |
|---------|-----------|
| INT | ganze Zahl |
| DECIMAL | Dezimalzahl |
| VARCHAR | Text mit variabler Länge |
| CHAR | Text mit fester Länge |
| DATE | Datum |
| TIME | Uhrzeit |
| BOOLEAN | Wahrheitswert |

---

**Beispiele**

```sql
kundennr INT
name VARCHAR(100)
preis DECIMAL(10,2)
geburtsdatum DATE
```

---

**Wichtige Constraints**

| Constraint | Bedeutung |
|-----------|-----------|
| PRIMARY KEY | eindeutiger Primärschlüssel |
| FOREIGN KEY | Fremdschlüssel auf andere Tabelle |
| NOT NULL | Wert darf nicht leer sein |
| UNIQUE | Wert muss eindeutig sein |
| CHECK | prüft eine Bedingung |
| DEFAULT | Standardwert, wenn kein Wert angegeben wird |

---

**Beispiel**

```sql
CREATE TABLE kunde (
    kundennr INT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) UNIQUE,
    ort VARCHAR(100) DEFAULT 'Berlin'
);
```

---

**Merksatz**

Datentypen bestimmen die Art der Daten.  
Constraints bestimmen Regeln für diese Daten.

---

**Prüfungshinweis**

In IHK-Aufgaben wird häufig geprüft, ob passende Datentypen und Schlüssel richtig gewählt werden.

Typische Fehler:

- Text als INT speichern.
- Geldbeträge mit INT statt DECIMAL speichern.
- Primärschlüssel vergessen.
- Fremdschlüssel nicht eintragen.
- NOT NULL und UNIQUE verwechseln.

---

**Quellen**

- IT-Handbuch für Fachinformatiker