Dans les pays hispanophones, nous utilisons plus d'un nom de famille, comme:
Prénom ↘ ↙ Nom
Pedro Arturo Rodríguez Loyola
Prénom ↗ ↖ (?)
J'essaie de modéliser les données pour le nom du patient. Dans notre pays, c'est important, donc je ne peux pas négliger l'avant-dernier nom, mais je voudrais créer une application qui puisse avoir du sens pour d'autres développeurs, en particulier des pays anglophones.
J'ai créé une question similaire sur English.SE , il a quelques idées sur pourquoi il est important de persister les deux valeurs.
data-modeling
Pablo Olmos de Aguilera C.
la source
la source
name
champ?Réponses:
Un individu a un ou plusieurs prénoms et un ou plusieurs noms de famille, et éventuellement un titre. Ces noms ont un ordre pour eux. C'est à la localisation et à la culture de déterminer comment se référer à un individu.
Pour
Pedro Arturo Rodríguez Loyola
(contact # 1), vous auriez quatre lignes:De cette façon, il n'est pas limité à une structure donnée mais a toujours du sens pour un contact donné là-bas. Que faites-vous lorsque vous avez quelqu'un avec 3 ou 4 prénoms ou noms de famille? ou un nom de jeune fille?
Notez que j'ai changé l'ordre d'une révision précédente de cette réponse - l'ordre est un ordre sur le nom entier plutôt que juste un ordre dans le type de nom parce que dans certaines cultures, le nom de famille vient en premier, vous pouvez avoir divisé parties de titre "Sir John Smith II".
Lecture supplémentaire
la source
Cela peut aider. Le message est humoristique, mais perspicace.
[Prénom] [Nom] n'est pas une règle universelle pour les noms. Il est courant de voir où vous vivez. Si vous imposez des règles, vous aurez tôt ou tard des personnes qui ne pourront pas être ajoutées à votre système.
Fondamentalement, assurez-vous d'imposer le moins de restrictions possible et de permettre une flexibilité entre le nom stocké réel et tout autre nom supplémentaire.
J'irais avec quelque chose comme ça:
Par exemple, mon nom n'est pas correctement inscriptible dans la plupart des langues européennes, en raison des signes diacritiques spécifiques au roumain (donc, chaque fois que j'écris mon nom en dehors de mon pays d'origine, techniquement je l'écris à tort - pour que les gens puissent le lire et le prononcer).
Quelques exemples de noms et liens intéressants:
http://en.wikipedia.org/wiki/Nicholas_Barbon
http://en.wikipedia.org/wiki/Prince_%28musician%29
http://en.wikipedia.org/wiki/P_diddy
http://en.wikipedia.org/wiki/Burmese_name
la source
Ce n'est pas une chose compliquée ..... ou il me manque quelque chose.
Ayez ces champs:
name
(varchar),lastname
(varchar).Puis un formulaire pour remplir le nom complet, exemple:
Jorge Patricio
et le nom de famillePèrez Gonzáles
.Dans la recherche, vous avez de nombreux opérateurs de comparaison, par exemple dans MySQL,
like
qui vous aideront à chercher.La plupart du temps, les noms de famille composés sont toujours en ordre.
Pérez González
dit surtout son nom de famille de cette façon, et non dans l'ordre inverse.Vous allez sur-concevoir votre base de données d'une autre manière.
la source
Il existe trois types de noms personnels: Polynymes (noms à plusieurs composants), Mononymes (noms à un seul composant, ex "Cher") et Pictonymes (noms représentés par des images, ex The Artist ).
Une personne peut avoir plusieurs noms, jouer des rôles , par exemple le nom légal et le nom préféré.
Un polynyme a plusieurs composantes, dont le prénom et le nom de famille doivent être requis. Il existe plusieurs types de noms de famille:
3 est important car on s'attendrait à ce qu'il soit appelé M. Fernández de Calderón , et non M. Fernández de Calderón García-Iglesias.
Donc, fondamentalement, ayez un champ de nom de famille obligatoire et un champ secondaireSurname nullable.
la source
Comment modélisez-vous les différentes composantes du nom d'une personne? Vous ne le faites pas . Au lieu de modéliser des champs séparés pour tous les composants du nom légal d'une personne, ainsi que sa salutation préférée, son appelation, son nom informel, son nom d'utilisateur, son surnom et son nom, modélisez uniquement ce qui vous intéresse.
Il y a de fortes chances que votre système se soucie au maximum de quatre "noms" pour quelqu'un:
De nombreux systèmes utiliseraient simplement le nom formel de quelqu'un pour # 1 et # 2, laissant les seuls noms qui vous intéressent comme "une chaîne représentant le nom de l'utilisateur" et "une chaîne représentant comment le premier doit être trié".
Du point de vue de la modélisation des données, définissez uniquement les valeurs dont vous auriez réellement besoin. La meilleure façon d'optimiser le stockage de ces valeurs est un détail d'implémentation - celui pour lequel vous ne causerez des maux de tête que si vous sur-optimisez. (Bien sûr, vous "pourriez" simplement enregistrer un prénom et un nom, mais que feriez-vous pour quelqu'un qui n'a qu'un seul nom?)
la source
Considérons cela d'une autre manière.
Votre système doit se connecter à d'autres systèmes, peu importe votre flexibilité si ce n'est pas le cas. Alors, que font les systèmes avec lesquels vous devez transférer des données?
Lorsque je téléphone à mon médecin pour un rendez-vous, il me demande ma date de naissance, les systèmes leur montrent alors une liste de personnes qui correspondent, puis ils me demandent mon nom, enfin la demande de mon adresse pour confirmer qu'ils ont sélectionné la bonne personne.
Le médecin a besoin de connaître le nom auquel je m'adresse lorsqu'il me parle; ils ont également besoin de connaître le nom pour mettre une lettre s'ils m'écrivent.
Par conséquent, pas seulement un champ de texte unique qui autorise les espaces. Il n'y a aucune raison de séparer le premier du nom de famille, à moins que vous ne les traitiez de la même manière.
la source
Almodóvar
plutôt queFernando
.