Renommer une colonne de base de données dans la table de référence (violation?)
-
21-08-2019 - |
Question
Dites que j'ai ce tableau:
Person table
--------------
PersonId
Address table
------------
AddressId
PersonAddressId
où PersonAddressId est PersonId et la clé étrangère. Existe-t-il un type de violation de base de données lors du renommage de la clé étrangère? Travailler avec des noms différents peut être très déroutant.
La solution
Il est généralement utile de nommer la colonne de clé étrangère de la même manière que la colonne de clé primaire à laquelle elle fait référence, si possible.
Bien sûr, parfois ce n'est pas possible:
- Deux colonnes dans
Address
peuvent toutes deux être des clés étrangères pourPerson
. Vous ne pouvez donc évidemment pas nommer les deux colonnesPersonId
. - Certaines tables contiennent une clé étrangère, par exemple
Employee.manager_id
pourrait être une référence àEmployee.employee_id
. Là encore, vous ne pouvez pas nommer la colonne de la même manière que la clé primaire référencée dans ce scénario.
Il n'y a pas de conventions de nommage strictes dans SQL. ISO 11179 est l'une des sources suggérées pour les conventions de dénomination des métadonnées.
Autres conseils
D'accord et c'est pourquoi la convention consiste à nommer PersonAddressId en tant que PersonId.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow