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
-
-
-
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
-
-

-
Passwörter speichern: Warum hasht man sie, statt sie zu verschlüsseln – und wozu dann noch ein „Salt“? 2
- KevinFernuni
13. September 2026 um 19:05 - Wirtschaftsinformatik
- KevinFernuni
14. September 2026 um 07:40
-
- Antworten
- 2
- Zugriffe
- 27
2
-
-
-

-
Unit-Test, Integrationstest, Abnahmetest – wer testet eigentlich was, und was hat das Pflichtenheft damit zu tun? 3
- Sophie99
11. September 2026 um 18:15 - Wirtschaftsinformatik
- Sophie99
12. September 2026 um 20:50
-
- Antworten
- 3
- Zugriffe
- 51
3
-
-
-

-
Schnittstellen zwischen zwei Systemen – warum ist der Datenaustausch in der Praxis so aufwendig? 2
- RobertM
9. September 2026 um 16:20 - Wirtschaftsinformatik
- RobertM
9. September 2026 um 20:55
-
- Antworten
- 2
- Zugriffe
- 72
2
-
-
-

-
Standardsoftware kaufen oder selbst entwickeln lassen – nach welchen Kriterien entscheide ich Make-or-Buy? 2
- TimDual
4. September 2026 um 18:40 - Wirtschaftsinformatik
- TimDual
5. September 2026 um 06:55
-
- Antworten
- 2
- Zugriffe
- 96
2
-
-
-

-
IT-Sicherheit: Vertraulichkeit, Integrität, Verfügbarkeit – wo ordne ich Verschlüsselung, Signatur und Backup jeweils ein? 2
- Jonas91
2. September 2026 um 18:35 - Wirtschaftsinformatik
- Jonas91
3. September 2026 um 06:45
-
- Antworten
- 2
- Zugriffe
- 99
2
-
-
-

-
Geschäftsprozess modellieren: EPK oder BPMN – und wann nehme ich XOR, UND oder ODER? 3
- Sophie99
31. August 2026 um 16:05 - Wirtschaftsinformatik
- Sophie99
1. September 2026 um 21:05
-
- Antworten
- 3
- Zugriffe
- 119
3
-
-
-

-
Lastenheft und Pflichtenheft – wer schreibt eigentlich was, und warum trennt man das überhaupt? 2
- AnnaWInf
29. August 2026 um 16:15 - Wirtschaftsinformatik
- AnnaWInf
30. August 2026 um 09:05
-
- Antworten
- 2
- Zugriffe
- 119
2
-
-
-

-
Drei-Schichten-Architektur – warum trennt man Oberfläche, Logik und Datenhaltung überhaupt? 3
- KevinFernuni
26. August 2026 um 14:25 - Wirtschaftsinformatik
- KevinFernuni
27. August 2026 um 07:05
-
- Antworten
- 3
- Zugriffe
- 117
3
-
-
-

-
ERP-System – was macht das eigentlich konkret, und warum reicht dafür nicht eine gute Excel-Lösung? 3
- JaninaBWL
24. August 2026 um 15:40 - Wirtschaftsinformatik
- JaninaBWL
26. August 2026 um 06:40
-
- Antworten
- 3
- Zugriffe
- 154
3
-
-
-

-
GROUP BY und HAVING – wann filtere ich mit WHERE und wann erst nach der Gruppierung? 3
- AnnaWInf
22. August 2026 um 15:45 - Wirtschaftsinformatik
- AnnaWInf
24. August 2026 um 07:35
-
- Antworten
- 3
- Zugriffe
- 175
3
-