Nommer les identifiants des tables FileMaker

Il y a quelques temps, Fabrice réclamait une nomenclature claire et définitive pour nommer entre autres les clés primaires et étrangères de chaque table, c’est-à-dire pour désigner ces rubriques très particulières qui permettent de créer des liens entre occurrences de table à partir d’identifiants (1).

Pour mémoire, je rappelle que chaque enregistrement appartenant à une table doit posséder un identifiant dont la valeur est unique (pas de doublon) et dont l’usage est également unique (une rubrique d’identifiant ne sert pas à autre chose qu’à identifier un enregistrement). À partir de cet identifiant, appelé clé primaire, on peut créer des liens entre occurrences de tables (alias des tables dans le graphe des liens) en mettant en relation une clé primaire avec une clé étrangère définie avec la valeur de la clé primaire. Grâce à ce type de lien, on peut alors associer des personnes à une société par un lien d’appartenance : ces personnes « appartiennent » à la société Durand (par exemple), elles en sont les salariés ou les associés, ou…

La difficulté de Fabrice est de savoir comment nommer ces rubriques clé primaire et clé étrangère.

Et apparemment, il n’est pas le seul puisqu’un certain David a ouvert un fil de discussion sur le forum anglophone de FileMaker Community pour demander comment ceux qui participent à ce forum nomment ces fameuses rubriques.

https://community.filemaker.com/message/762311

Eh bien à ce jour, ce fil a reçu… 204 réponses !

C’est dire que les choses ne sont pas aussi tranchées qu’on pourrait l’imaginer… Quitte à décevoir Fabrice et plusieurs d’entre vous, il est donc clair qu’il n’existe pas UNE manière de faire et que l’on peut trouver beaucoup d’arguments valables pour l’une ou l’autre approche. Je précise que dans ce forum international, et dans ce fil, interviennent des développeurs FileMaker considérés comme des « pontes » en la matière et qu’ils ne sont pas tous d’accord entre eux !

Alors, je n’ose imaginer le pavé jeté dans la mare si l’on posait la question « comment nommez-vous vos groupement d’occurrences de tables et occurrences de tables dans le graphe des liens et pourquoi ? » 😉

Pour revenir au sujet des identifiants, pour notre part, à Editomac, notre double priorité est

  • la pédagogie – être compris par tous, y compris et surtout par ceux qui ne sont pas informaticiens de métier et qui ne sont pas anglophones –
  • et qu’au final, la solution développée fonctionne dans l’environnement où elle le doit.

Pour cela…

1) On va éviter systématiquement les caractères spéciaux (accentués notamment) et les espaces, et dans certains cas, les underscores (tirets bas) en début de nom car ils peuvent être mal interprétés dans certains contextes d’utilisation.

2) En dehors de ces contraintes, en développement accompagné et en formation, on s’adapte aux choix du stagiaire s’il a adopté une nomenclature et qu’il s’y tient.

3) Magalie propose pour la clé primaire le nom zkp (z pour mettre la rubrique en bas de l’alphabet en cas de tri, k pour clé (key en anglais) et p pour primaire) et zke_NomDeLaTable pour la clé étrangère (e pour étrangère). Elle explique cela en détail dans un post (en anglais) en réponse dans le fil de la discussion cité ci-dessus (en dessous de la question, page 8, avant dernier message) :

https://community.filemaker.com/message/762311?messageTarget=all&start=175&mode=comments

4) Nos développeurs utilisent le plus souvent la même nomenclature mais non francisée, ce qui donne : zkp et zkf_NomDeLaTable. (f pour foreign)

5) L’histoire des tutoriels que nous publions et dont je suis la principale rédactrice est déjà très longue. L’utilisation du nom des clés primaires et étrangères a pu varier au fil du temps mais la plupart du temps, elle a été la suivante : Id pour la clé primaire et Id_NomDeLaTable pour la clé étrangère. On peut également mettre un z devant « Id » pour permettre à ces clés primaires et étrangères de se retrouver en fin de liste lorsque les rubriques sont triées par ordre alphabétique. J’ai également cherché à mettre tout en haut de la liste ces rubriques Id et Id_NomDeLaTable, ce qui est beaucoup plus pratique pour faire les liens dans le graphe des liens, mais je me suis heurtée à tous les caractères interdits, notamment en début de mots (nombres, underscore, etc.) et j’ai donc dû y renoncer 🙁

Marie-Charlotte Potton

 

(1) Suite à la question de Fabrice et parce que nous avons pensé que les réponses que nous pouvions y apporter pouvaient intéresser beaucoup d’entre vous, nous avons publié un eBook, Tables, occurrences de table et graphe des liens pour faire le point sur cette question, mais également sur celle des occurrences de table et de la manière de les nommer. En quelques pages rapidement lues, il vous propose de faire le point et vous explique notamment une manière d’organiser son graphe de liens et de nommer les occurrences de table qui s’y trouvent.

 

Tags: , , , ,

Merci de laisser un commentaire (Pas de commentaire )

Désolé, les commentaires des articles réservés sont eux-mêmes réservés

Il n'y a pas de commentaire pour l'instant, soyez le premier ;-)