Hi, kleine Grundsatzfrage aus dem Datenbank-Modul: Beim Primärschlüssel habe ich die Wahl zwischen einem natürlichen Schlüssel (z. B. die Matrikelnummer oder ISBN) und einem künstlichen Schlüssel (eine einfach hochzählende ID / Surrogatschlüssel). Unser Skript sagt „kommt drauf an“, aber wann nehme ich denn nun was? Gibt es eine Faustregel?
Primärschlüssel: künstlicher (Surrogat) vs. natürlicher Schlüssel – was nehme ich wann?
-
AnnaWInf -
16. Juli 2026 um 16:50 -
Erledigt
-
-
Mehr erfahren →AnzeigeFernakademieGeprüfte Fernlehrgänge, jederzeit starten – gratis Infopaket.
-
Faustregel, mit der du fast immer richtig liegst: Im Zweifel Surrogatschlüssel (also eine künstliche, technische ID). Der Grund ist Stabilität – ein Primärschlüssel sollte sich nie ändern und immer eindeutig sein.
Natürliche Schlüssel klingen elegant, haben aber Tücken:
- Sie können sich ändern (eine Artikelnummer wird umgestellt, ein Nutzername geändert) – und dann musst du die Änderung durch alle Fremdschlüssel-Tabellen schleppen.
- Sie sind manchmal doch nicht so eindeutig, wie man denkt.
- Zusammengesetzte natürliche Schlüssel machen Joins und Fremdschlüssel unhandlich.
Eine technische ID ist dagegen bedeutungslos, unveränderlich und schmal – ideal als Primär- und Fremdschlüssel.
-
Dem schließe ich mich an, mit einer wichtigen Ergänzung aus der Praxis: Ein Surrogatschlüssel als Primärschlüssel ersetzt nicht die fachliche Eindeutigkeit. Die bildest du zusätzlich über ein UNIQUE-Constraint auf den natürlichen Schlüssel ab.
Beispiel Student: id (Surrogat, Primärschlüssel) + matrikelnummer mit UNIQUE. So hast du beides: eine stabile ID für die Verknüpfungen und die Garantie, dass keine Matrikelnummer doppelt vergeben wird. Genau das übersehen viele in der Klausur – sie werfen den natürlichen Schlüssel ganz weg, und dann kann die Tabelle plötzlich Dubletten enthalten.
Jetzt mitmachen!
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!
Letzte Beiträge
-
- Thema
- Antworten
- Letzte Antwort
-
-

-
Vendor Lock-in bei Cloud-Diensten – wie vermeide ich die Abhängigkeit? 2
- AnnaWInf
24. Oktober 2026 um 12:39 - Wirtschaftsinformatik
- AnnaWInf
24. Oktober 2026 um 17:53
-
- Antworten
- 2
- Zugriffe
- 75
2
-
-
-

-
Prozessmodellierung mit BPMN – wie unterscheide ich Gateway-Typen sauber? 2
- MarkusWB
23. Oktober 2026 um 18:13 - Wirtschaftsinformatik
- MarkusWB
23. Oktober 2026 um 23:01
-
- Antworten
- 2
- Zugriffe
- 79
2
-
-
-

-
Testdatenbank vs. Produktivsystem – wie trenne ich das sauber im Projekt? 2
- AnnaWInf
21. Oktober 2026 um 16:43 - Wirtschaftsinformatik
- AnnaWInf
21. Oktober 2026 um 20:45
-
- Antworten
- 2
- Zugriffe
- 98
2
-
-
-

-
Lastenheft und Pflichtenheft – wer schreibt eigentlich was? 2
- AnnaWInf
19. Oktober 2026 um 11:05 - Wirtschaftsinformatik
- AnnaWInf
19. Oktober 2026 um 17:50
-
- Antworten
- 2
- Zugriffe
- 104
2
-
-
-

-
Microservices oder Monolith – was eignet sich besser für mein Studienprojekt? 3
- DanielIT
15. Oktober 2026 um 11:12 - Wirtschaftsinformatik
- DanielIT
15. Oktober 2026 um 16:53
-
- Antworten
- 3
- Zugriffe
- 144
3
-
-
-

-
DSGVO im Studienprojekt – was muss ich bei selbst erhobenen Umfragedaten beachten? 2
- AnnaWInf
14. Oktober 2026 um 14:10 - Wirtschaftsinformatik
- AnnaWInf
14. Oktober 2026 um 16:48
-
- Antworten
- 2
- Zugriffe
- 148
2
-
-
-

-
ER-Diagramm vs. UML-Klassendiagramm – wann nehme ich was? 2
- AnnaWInf
11. Oktober 2026 um 17:51 - Wirtschaftsinformatik
- AnnaWInf
11. Oktober 2026 um 23:07
-
- Antworten
- 2
- Zugriffe
- 144
2
-
-
-

-
Cloud Computing: SaaS, PaaS, IaaS – wie unterscheide ich die Modelle in der Klausur? 2
- MarkusWB
10. Oktober 2026 um 17:58 - Wirtschaftsinformatik
- MarkusWB
10. Oktober 2026 um 22:56
-
- Antworten
- 2
- Zugriffe
- 155
2
-
-
-

-
Clean Code Prinzipien – lohnt sich der Aufwand im Studienprojekt wirklich? 2
- MarkusWB
9. Oktober 2026 um 17:11 - Wirtschaftsinformatik
- MarkusWB
10. Oktober 2026 um 08:34
-
- Antworten
- 2
- Zugriffe
- 163
2
-
-
-

-
Versionskontrolle vs. Backup – reicht Git allein als Datensicherung für mein Projekt? 2
- DanielIT
6. Oktober 2026 um 14:36 - Wirtschaftsinformatik
- DanielIT
6. Oktober 2026 um 18:35
-
- Antworten
- 2
- Zugriffe
- 176
2
-