Contraintes de clés étrangères sur plusieurs tables d'employés
Cet article explore la possibilité de créer des relations de clés étrangères dans une table de déductions qui sont liées aux clés primaires de plusieurs tables d'employés (employees_ce et employes_sn) au sein d'une seule base de données.
Le défi vient du fait d'avoir deux tables d'employés distinctes, employés_ce et employés_sn, chacune avec sa propre clé primaire (empid). Le but est de créer une clé étrangère dans la table des déductions référençant les deux clés primaires.
Un exemple d'ensemble de données est présenté montrant la structure des données de Employees_ce et Employees_sn, ainsi que les références de clé étrangère prévues dans la table des déductions.
Conception optimale de la base de données
La solution la plus efficace consiste à restructurer la base de données en utilisant une approche plus normalisée. Au lieu de tables séparées pour les employés ce et sn, une table employees
unique et unifiée doit être créée avec un champ id
unique comme clé primaire.
Les tables employees_ce
et employees_sn
existantes peuvent ensuite être refactorisées en tant que tables enfants contenant des attributs spécifiques aux employés. Les deux incluraient une clé étrangère faisant référence au champ id
dans la table employees
principale.
Cette approche consolidée élimine le besoin de plusieurs références de clé étrangère dans la table de déductions, simplifiant ainsi le schéma de la base de données et améliorant l'intégrité des données. La structure qui en résulte est plus efficace et plus facile à gérer.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!