Question

Je sais que les clés primaires de substitution sont généralement recommandées sur les clés primaires naturelles, mais qu'il y a des arguments en faveur des clés primaires de substitution en matière de noms d'utilisateur?

Était-ce utile?

La solution

Si vous ne voulez pas obtenir les noms d'utilisateur en double, créez un UNIQUE constraint .

Que faire si DWong1145 veut changer de nom d'utilisateur? Voulez-vous de faire toutes les relations de base de données à UPDATE CASCADE?

Autres conseils

NON , vous devriez Utiliser le nom d'utilisateur uniquement comme une clé / constante unique, . Nom d'utilisateur peut être changé, juste et par exemple:. Il peut être une marque et le propriétaire vous demande de le déposer

Il est un bon candidat dans un certain sens, mais vous devez considérer si vous voulez vraiment le faire. Par exemple, vous avez un utilisateur avec un nom d'utilisateur, l'utilisateur est « supprimé » (ou marqué comme supprimé). Donc, il n'y a en fait aucune raison de ne pas permettre de créer un autre utilisateur avec le même nom d'utilisateur, mais il est déjà « pris », car il est une clé primaire.

Du point de vue du client, vous misez. Je ne veux pas que mon nom d'utilisateur pour être DWong1145.

Un grand inconvénient d'avoir une chaîne comme clé primaire, peu importe que ce soit un nom d'utilisateur ou autre chose, est que toutes les colonnes clés étrangères référence à la table doivent aussi être des chaînes, ce qui est à la fois plus lente et les déchets de plus d'espace.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top