Was ist Ihre Wahl für Primärschlüssel in Tabellen, die eine Person darstellen (wie Kunde, Benutzer, Kunde, Mitarbeiter usw.)? Meine erste Wahl wäre eine Sozialversicherungsnummer (SSN). Von der Verwendung der SSN wird jedoch aufgrund von Datenschutzbedenken und verschiedenen Vorschriften abgeraten. Die SSN kann sich im Laufe des Lebens einer Person ändern, was ein weiterer Grund dagegen ist.
Ich vermute, dass eine der Funktionen eines gut gewählten natürlichen Primärschlüssels darin besteht, Duplikate zu vermeiden. Ich möchte nicht, dass eine Person zweimal in der Datenbank registriert wird. Ein Surrogat oder ein generierter Primärschlüssel hilft nicht dabei, doppelte Einträge zu vermeiden. Wie kann ich dies am besten angehen?
Was ist der beste Weg, um Eindeutigkeit in Ihrer Anwendung für Person Entität zu garantieren und kann dies auf Datenbankebene mit Primärschlüssel oder Eindeutigkeitsbeschränkung behandelt werden?